Listes déroulantes W3.CSS



Classes déroulantes W3.CSS

W3.CSS fournit les classes déroulantes suivantes :

Classer Définit
w3-liste déroulante-survol Un élément déroulant survolable
w3-dropdown-contenu La partie déroulante à afficher
w3-liste déroulante-clic Un élément déroulant cliquable

Éléments déroulants

La classe w3-dropdown-hover définit un élément déroulant survolable.

La classe w3-dropdown-content définit le contenu déroulant à afficher.

Exemple

<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>

L'élément survolable et l'élément de contenu déroulant peuvent être n'importe quel élément HTML.

Dans l'exemple ci-dessus, l'élément de survol était un <bouton> et le contenu de la liste déroulante un <div>.

Dans l'exemple suivant, l'élément hover est un <p> et le contenu de la liste déroulante est un <span> :

Exemple

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



Menus déroulants

La classe w3-dropdown-hover est parfaite pour créer des barres de navigation avec des menus déroulants :

Accueil Lien 1

Exemple

<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>

Remarque : vous en apprendrez plus sur les barres de navigation plus loin dans ce didacticiel.


Listes déroulantes cliquables

La classe w3-dropdown-click crée un élément déroulant cliquable.

Avec cette classe, la liste déroulante est ouverte par JavaScript :

Exemple

<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>


Listes déroulantes d'images

Déplacez la souris sur l'image :

Monterosso

Norvège

Exemple

<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>


Listes déroulantes des cartes

Déplacez la souris sur l'une des villes ci-dessous :

Londres
Londres

Londres est la capitale de l'Angleterre.

C'est la ville la plus peuplée du Royaume-Uni, avec une aire métropolitaine de plus de 9 millions d'habitants.

Tokyo
Tokyo

Tokyo is the capital city of Japan.

13 million inhabitants.

Exemple

<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>


Liste déroulante animée

Utilisez l'une des classes w3-animate- pour effectuer un fondu, un zoom ou un glissement dans le contenu déroulant :

Exemple

<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>


Liste déroulante alignée à droite

Utilisez la classe w3-right pour faire flotter le menu déroulant vers la droite. Utilisez CSS pour positionner le contenu du menu déroulant ( right:0 fera passer le menu déroulant de droite à gauche au lieu de gauche à droite) :

Exemple

<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>