Gli ultimi tutorial di sviluppo web
 

CSS menu a discesa


Creare un menu a discesa hoverable con i CSS.


Demo: Esempi a discesa

Spostare il mouse sopra esempi qui sotto:


discesa di base

Creare una casella a discesa che appare quando l'utente sposta il mouse su un elemento.

Esempio

<style>
.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    padding: 12px 16px;
    z-index: 1;
}

.dropdown:hover .dropdown-content {
    display: block;
}
</style>

<div class="dropdown">
  <span> Mouse over me </span>
  <div class="dropdown-content">
    <p> Hello World! </p>
  </div>
</div>
Prova tu stesso "

esempio spiegato

HTML) Utilizzare qualsiasi elemento per aprire il contenuto discesa, ad esempio un <span> , o <button> elemento.

Utilizzare un elemento contenitore (come <div> ) per creare il contenuto discesa e aggiungere quello che volete all'interno di esso.

Avvolgere un <div> elemento attorno agli elementi per posizionare il contenuto discesa correttamente con i CSS.

CSS) L' .dropdown classe di utilizzo position:relative , che è necessario quando si vuole i contenuti discesa da collocare proprio sotto il pulsante a discesa (utilizzando position:absolute ).

Il .dropdown-content classe contiene il contenuto effettivo discesa. Si è nascosta per impostazione predefinita, e sarà visualizzato al passaggio del mouse (vedi sotto). Nota il min-width è impostata su 160px. Sentitevi liberi di cambiare questo. Suggerimento: Se si desidera che la larghezza del contenuto discesa per essere il più ampio sul pulsante a discesa, impostare la width al 100% (e overflow:auto per consentire di scorrimento su piccoli schermi).

Invece di utilizzare un confine, abbiamo usato il CSS3 box-shadow di proprietà per rendere il menu a discesa l'aspetto di una "carta".

L' :hover selettore viene utilizzato per visualizzare il menu a discesa quando l'utente sposta il mouse sul pulsante a discesa.


Menu a discesa

Creare un menu a discesa che consente all'utente di scegliere un'opzione da un elenco:

Questo esempio è simile al precedente, tranne che aggiungiamo i collegamenti all'interno della casella a discesa e lo stile loro di adattarsi a un pulsante a discesa stile:

Esempio

<style>
/* Style The Dropdown Button */
.dropbtn {
    background-color: #4CAF50;
    color: white;
    padding: 16px;
    font-size: 16px;
    border: none;
    cursor: pointer;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
    position: relative;
    display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}

/* Links inside the dropdown */
.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {background-color: #f1f1f1}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {
    display: block;
}

/* Change the background color of the dropdown button when the dropdown content is shown */
.dropdown:hover .dropbtn {
    background-color: #3e8e41;
}
</style>

<div class="dropdown">
  <button class="dropbtn"> Dropdown </button>
  <div class="dropdown-content">
    <a href="#"> Link 1 </a>
    <a href="#"> Link 2 </a>
    <a href="#"> Link 3 </a>
  </div>
</div>
Prova tu stesso "

Allineato a destra Content discesa

Se si desidera che il menu a discesa per passare da destra a sinistra, invece di sinistra a destra, aggiungere right: 0;

Esempio

.dropdown-content {
    right: 0;
}
Prova tu stesso "

Esempi

Altri esempi

Immagine discesa
Questo esempio dimostra come aggiungere un'immagine e altri contenuti all'interno della casella a discesa.

discesa Navbar
Questo esempio dimostra come aggiungere un menu a discesa all'interno di una barra di navigazione.