Hoe te maken: Groot menu
- Previous page Pull-up menu
- Next page Mobile menu
Leer hoe je een groot menu kunt maken (een volledige breedte dropdown-menu in de navigatiebalk).
Groot menu
Maak een groot menu
Maak een dropdown-menu aan die wordt weergegeven wanneer de gebruiker de muis over een element in de navigatiebalk移動t.
Stap 1 - Voeg HTML toe:
<div class="navbar"> <a href="#home">Thuis</a> <a href="#news">Nieuws</a> <div class="dropdown"> <button class="dropbtn">Dropdown</button> <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>Categorie 1</h3> <a href="#">Link 1</a> <a href="#">Link 2</a> <a href="#">Link 3</a> </div> <div class="column"> <h3>Categorie 2</h3> <a href="#">Link 1</a> <a href="#">Link 2</a> <a href="#">Link 3</a> </div> <div class="column"> <h3>Categorie 3</h3> <a href="#">Link 1</a> <a href="#">Link 2</a> <a href="#">Link 3</a> </div> </div> </div> </div> </div>
Voorbeeld uitleg:
Je kunt elk element gebruiken om de dropdown-menu te openen, bijvoorbeeld <button>、<a> of <p> elementen.
Gebruik het container element (zoals <div class="dropdown-content">) om de dropdown-menu te maken, voeg een raster (kolommen) toe en voeg vervolgens de dropdown-links toe aan het raster.
Gebruik het <div class="dropdown"> element om de knop en het container element (<div class="dropdown-content">) te omhullen, zodat de dropdown-menu correct geplaatst kan worden met CSS.
Tweede stap - Voeg CSS toe:
/* Container van de navigatiebalk */ .navbar { overflow: hidden; background-color: #333; font-family: Arial; } /* Links binnen de navigatiebalk */ .navbar a { float: left; font-size: 16px; color: white; text-align: center; padding: 14px 16px; text-decoration: none; } /* Dropdown menu container */ .dropdown { float: left; overflow: hidden; } /* Dropdown menu knop */ .dropdown .dropbtn { font-size: 16px; border: none; outline: none; color: white; padding: 14px 16px; background-color: inherit; font: inherit; /* Belangrijk voor verticale uitlijning op mobiele apparaten */ margin: 0; /* Belangrijk voor verticale uitlijning op mobiele apparaten */ } /* Rode achtergrondkleur toevoegen aan navigatielinken bij muisovergang */ .navbar a:hover, .dropdown:hover .dropbtn { background-color: red; } /* Ingeklapte lijstinhoud (standaard verborgen) */ .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; } /* Grote menukop (indien nodig) */ .dropdown-content .header { background: red; padding: 16px; color: white; } /* Toon dropdown-menu bij muisover */ .dropdown:hover .dropdown-content { display: block; } /* Maak drie gelijke breedte kolommen en zet ze naast elkaar */ .column { float: left; width: 33.33%; padding: 10px; background-color: #ccc; height: 250px; } /* Stel stijlen in voor links binnen de kolommen */ .column a { float: none; color: black; padding: 16px; text-decoration: none; display: block; text-align: left; } /* Voeg achtergrondkleur toe bij muisover */ .column a:hover { background-color: #ddd; } /* Verwijder de float achter de kolommen */ .row:after { content: ""; display: table; clear: both; }
Voorbeeld uitleg:
We hebben achtergrondkleur, padding en andere stijlen ingesteld voor de navigatiemenu en navigatielinks.
We hebben achtergrondkleur, padding en andere stijlen ingesteld voor de dropdown-menu knop.
.dropdown-content
Klasse bevat de daadwerkelijke dropdown-menu. Het is standaard verborgen en wordt weergegeven bij muisover (zie hieronder). Het is geplaatst onder de dropdown-menu knop en de breedte is ingesteld op 100%, om het hele scherm te dekken.
We gebruiken geen rand, maar box-shadow
Eigenschap, maakt de dropdown-menu eruit alsof het een 'kaart' is. We gebruiken ook z-index
Plaats de dropdown-menu voor andere elementen.
:hover
Selector wordt gebruikt om de dropdown-menu weer te geven wanneer de gebruiker de muis over de dropdown-menu knop houdt.
.column
Klasse wordt gebruikt om drie parallel zwevende kolommen te maken binnen de dropdown-menu (om verschillende categorieën te tonen).
Responsieve grote menu
/* Responsieve lay-out - Maak drie kolommen samenvouwen in plaats van naast elkaar te plaatsen */ @media screen and (max-width: 600px) { .column { width: 100%; height: auto; } }
Gerelateerde pagina's
Handleiding:CSS dropdown menu
Handleiding:Hoe een klikbare dropdown-menu te maken
Handleiding:CSS navigation bar
Handleiding:Hoe een responsieve bovenste navigatiemenu te maken
- Previous page Pull-up menu
- Next page Mobile menu