Listas suspensas W3.CSS



Classes suspensas W3.CSS

O W3.CSS fornece as seguintes classes suspensas:

Classe Define
w3-dropdown-hover Um elemento suspenso flutuante
w3-dropdown-conteúdo A parte suspensa a ser exibida
w3-dropdown-clique Um elemento suspenso clicável

Elementos suspensos

A classe w3-dropdown-hover define um elemento suspenso que pode passar o mouse.

A classe w3-dropdown-content define o conteúdo suspenso a ser exibido.

Exemplo

<div class="w3-dropdown-hover">
  <button class="w3-button">Hover Over Me!</button>
  <div class="w3-dropdown-content w3-bar-block w3-border">
    <a href="#" class="w3-bar-item w3-button">Link 1</a>
    <a href="#" class="w3-bar-item w3-button">Link 2</a>
    <a href="#" class="w3-bar-item w3-button">Link 3</a>
  </div>
</div>

Tanto o elemento flutuante quanto o elemento de conteúdo suspenso podem ser qualquer elemento HTML.

No exemplo acima, o elemento hover era um <button> e o conteúdo da lista suspensa era um <div>.

No próximo exemplo, o elemento hover é um <p> e o conteúdo da lista suspensa é um <span>:

Exemplo

<p class="w3-dropdown-hover">Hover over me!
  <span class="w3-dropdown-content w3-green">Hello World!</span>
</p>



Menus suspensos

A classe w3-dropdown-hover é perfeita para criar barras de navegação com menus suspensos:

Exemplo

<div class="w3-bar w3-light-grey">
  <a href="#" class="w3-bar-item w3-button">Home</a>
  <a href="#" class="w3-bar-item w3-button">Link 1</a>
  <div class="w3-dropdown-hover">
    <button class="w3-button">Dropdown</button>
    <div class="w3-dropdown-content w3-bar-block w3-card-4">
      <a href="#" class="w3-bar-item w3-button">Link 1</a>
      <a href="#" class="w3-bar-item w3-button">Link 2</a>
      <a href="#" class="w3-bar-item w3-button">Link 3</a>
    </div>
  </div>
</div>

Nota: Você aprenderá mais sobre as Barras de Navegação posteriormente neste tutorial.


Listas suspensas clicáveis

A classe w3-dropdown-click cria um elemento suspenso clicável.

Com esta classe, a lista suspensa é aberta por JavaScript:

Exemplo

<div class="w3-dropdown-click">
  <button onclick="myFunction()" class="w3-button w3-black">Click Me!</button>
  <div id="Demo" class="w3-dropdown-content w3-bar-block w3-border">
    <a href="#" class="w3-bar-item w3-button">Link 1</a>
    <a href="#" class="w3-bar-item w3-button">Link 2</a>
    <a href="#" class="w3-bar-item w3-button">Link 3</a>
  </div>
</div>

<script>
function myFunction() {
  var x = document.getElementById("Demo");
  if (x.className.indexOf("w3-show") == -1) { 
    x.className += " w3-show";
  } else {
    x.className = x.className.replace(" w3-show", "");
  }
}
</script>


Listas suspensas de imagens

Passe o mouse sobre a imagem:

Monterosso

Noruega

Exemplo

<div class="w3-dropdown-hover">
  <img src="img_snowtops.jpg" alt="Norway" style="width:20%">
  <div class="w3-dropdown-content" style="width:300px">
    <img src="img_snowtops.jpg" alt="Norway" style="width:100%">
  </div>
</div>


Menus suspensos de cartão

Mova o mouse sobre uma das cidades abaixo:

Londres
Londres

Londres é a capital da Inglaterra.

É a cidade mais populosa do Reino Unido, com uma área metropolitana de mais de 9 milhões de habitantes.

Tóquio
Tokyo

Tokyo is the capital city of Japan.

13 million inhabitants.

Exemplo

<div class="w3-dropdown-hover">London
  <div class="w3-dropdown-content w3-card-4" style="width:250px">
    <img src="img_london.jpg" alt="London" style="width:100%">
    <div class="w3-container">
      <p>London is the capital city of England.</p>
      <p>It is the most populous city in the UK.</p>
    </div>
  </div>
</div>


Lista suspensa animada

Use qualquer uma das classes w3-animate- para esmaecer, ampliar ou deslizar no conteúdo suspenso:

Exemplo

<div class="w3-dropdown-click">
  <button onclick="myFunction()" class="w3-button">Click Me</button>
  <div id="Demo" class="w3-dropdown-content w3-bar-block w3-animate-zoom">
    <a href="#" class="w3-bar-item w3-button">Link 1</a>
    <a href="#" class="w3-bar-item w3-button">Link 2</a>
    <a href="#" class="w3-bar-item w3-button">Link 3</a>
  </div>
</div>


Lista suspensa alinhada à direita

Use a classe w3-right para flutuar a lista suspensa para a direita. Use CSS para posicionar o conteúdo suspenso ( right:0 fará com que o menu suspenso vá da direita para a esquerda em vez da esquerda para a direita):

Exemplo

<div class="w3-dropdown-hover w3-right">
  <button class="w3-button">Dropdown</button>
  <div class="w3-dropdown-content w3-bar-block w3-border" style="right:0">
    <a href="#" class="w3-bar-item w3-button">Link 1</a>
    <a href="#" class="w3-bar-item w3-button">Link 2</a>
    <a href="#" class="w3-bar-item w3-button">Link 3</a>
  </div>
</div>