Come creare: Menu grande
- Pagina precedente Menu a scorrimento
- Pagina successiva Menu mobile
Impara come creare un menu grande (menu a discesa a larghezza piena nella barra di navigazione).
Menu grande
Crea un menu grande
Crea un menu a discesa che viene visualizzato quando l'utente muove il mouse su un elemento della barra di navigazione.
Passo 1 - Aggiungi HTML:
<div class="navbar"> <a href="#home">Home</a> <a href="#news">News</a> <div class="dropdown"> <button class="dropbtn">Dropdown <i class="fa fa-caret-down"></i> </button> <div class="dropdown-content"> <div class="header"> <h2>Mega Menu</h2> </div> <div class="row"> <div class="column"> <h3>Category 1</h3> <a href="#">Link 1</a> <a href="#">Link 2</a> <a href="#">Link 3</a> </div> <div class="column"> <h3>Category 2</h3> <a href="#">Link 1</a> <a href="#">Link 2</a> <a href="#">Link 3</a> </div> <div class="column"> <h3>Categoria 3</h3> <a href="#">Link 1</a> <a href="#">Link 2</a> <a href="#">Link 3</a> </div> </div> </div> </div> </div>
Esempio di spiegazione:
Puoi usare qualsiasi elemento per aprire il menu a discesa, ad esempio <button>、<a> o <p> elementi.
Usa l'elemento contenitore (ad esempio <div class="dropdown-content">) per creare il menu a discesa, aggiungi una griglia (colonne) e aggiungi i link del menu all'interno della griglia.
Usa l'elemento <div class="dropdown"> per avvolgere il pulsante e l'elemento contenitore (ad esempio <div class="dropdown-content">) per posizionare correttamente il menu a discesa utilizzando CSS.
Secondo passaggio - Aggiungi CSS:
/* Contenitore della barra di navigazione */ .navbar { overflow: hidden; background-color: #333; font-family: Arial; } /* Link all'interno della barra di navigazione */ .navbar a { float: left; font-size: 16px; color: white; text-align: center; padding: 14px 16px; text-decoration: none; } /* Contenitore del menu a discesa */ .dropdown { float: left; overflow: hidden; } /* Bottone del menu a discesa */ .dropdown .dropbtn { font-size: 16px; border: none; outline: none; color: white; padding: 14px 16px; background-color: inherit; font: inherit; /* Importante per allineamento verticale sui dispositivi mobili */ margin: 0; /* Importante per allineamento verticale sui dispositivi mobili */ } /* Aggiungi sfondo rosso ai link della barra di navigazione quando il mouse è sopra di essi */ .navbar a:hover, .dropdown:hover .dropbtn { background-color: red; } /* Contenuto della lista a discesa (nascosto per default) */ .dropdown-content { display: none; position: absolute; background-color: #f9f9f9; width: 100%; left: 0; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); z-index: 1; } /* Grand titolo del menu (se necessario) */ .dropdown-content .header { background: red; padding: 16px; color: white; } /* Visualizza il menu a tendina quando il mouse è sopra */ .dropdown:hover .dropdown-content { display: block; } /* Crea tre colonne uguali e fai sì che si fluttuino in parallelo */ .column { float: left; width: 33.33%; padding: 10px; background-color: #ccc; height: 250px; } /* Imposta lo stile per i link all'interno delle colonne */ .column a { float: none; color: black; padding: 16px; text-decoration: none; display: block; text-align: left; } /* Aggiungi colore di sfondo quando il mouse è sopra */ .column a:hover { background-color: #ddd; } /* Pulisci il float dopo le colonne */ .row:after { content: ""; display: table; clear: both; }
Esempio di spiegazione:
Abbiamo impostato lo stile di sfondo, il margine interno e altri stili per la barra di navigazione e i link della barra di navigazione.
Abbiamo impostato lo stile di sfondo, il margine interno e altri stili per il pulsante del menu a tendina.
.dropdown-content
la classe contiene il menu a tendina effettivo. Di default è nascosto e viene visualizzato quando si passa il mouse sopra (vedi di seguito). È posizionato sotto il pulsante del menu a tendina e la larghezza è impostata al 100%, per coprire l'intero schermo.
Non utilizziamo i bordi, ma utilizziamo box-shadow
proprietà, in modo che il menu a tendina sembri una "carta". Utilizziamo anche z-index
Posiziona il menu a tendina davanti ad altri elementi.
:hover
Il selettore viene utilizzato per visualizzare il menu a tendina quando l'utente posiziona il mouse sul pulsante del menu a tendina.
.column
La classe viene utilizzata per creare tre colonne fluttuanti in parallelo all'interno del menu a tendina (per visualizzare diverse categorie).
Menu grande responsive
/* Layout responsive - fa sì che tre colonne si accalcino invece di essere disposte in modo parallelo */ @media screen and (max-width: 600px) { .column { width: 100%; height: auto; } }
Pagine correlate
Guida:Menu a discesa CSS
Guida:Come creare un menu a tendina cliccabile
Guida:Barra di navigazione CSS
Guida:Come creare una barra di navigazione superiore responsive
- Pagina precedente Menu a scorrimento
- Pagina successiva Menu mobile