Dropdown Menu Bar on Hover
Author
- TechieBundle
- March 12, 2023
Live Demo
Code
You can check the code used in the demo below which you can also use in your projects.
HTML
<div class="dropdown-wrapper"> <div class="nav navigation-wrapper"> <ul class="nav-list"> <li class="nav-link"> Home </li> <li class="nav-link"> About </li> <li class="nav-link"> <ul class="nav-sub-list"> <li class="nav-dropdown-menu"> <span class="nav-title">Portfolio</span> <ul class="dropdown-menu"> <li>Zomato</li> <li>Swiggy</li> <li>UberEats</li> <li>Food Panda</li> </ul> </li> </ul> </li> <li class="nav-link">Blog</li> <li class="nav-link">Contact</li> </ul> </div> </div>
CSS
@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@200;400;500;600;700;900&display=swap"); html, body { width: 100%; height: 100%; background: #1f8775; margin-top: 2em; } li { list-style-type: none; } .navigation-wrapper > ul { display: flex; align-items: center; justify-content: center; gap: 4em; } .navigation-wrapper > ul > li { color: #ffffff; font-size: 2em; list-style: none; cursor: pointer; position: relative; font-family: "Nunito", sans serif; font-weight: 500; } .navigation-wrapper > ul > li:hover::before { content: ""; position: absolute; bottom: 0; height: 0; width: 0; left: 0; z-index: 1; border-bottom: 2px solid #fcfcfc; animation: border-move 0.5s linear; animation-fill-mode: forwards; } @keyframes border-move { 100% { width: 100%; } } .nav-sub-list { padding: 0; } .nav-dropdown-menu { display: block; position: relative; cursor: pointer; } .dropdown-menu { min-width: 100%; padding: 15px 0; position: absolute; background: #fefefe; z-index: 100; transition: 0.35s; border-radius: 16px; top: 1.3em; width: 200px; } .nav-dropdown-menu:not(:hover) > .dropdown-menu { padding: 0; z-index: 9; background: none; } .dropdown-menu > * { overflow: hidden; padding: 10px 15px; white-space: nowrap; font-size: 21px; color: #323232; text-align: left; border-bottom: 1px solid #eeeeee; } .dropdown-menu > *:hover { background: rgba(31, 135, 117, 0.34); } .nav-dropdown-menu:not(:hover) > .dropdown-menu > * { visibility: hidden; height: 0; padding-top: 0; padding-bottom: 0; margin: 0; color: rgba(25, 25, 25, 0); z-index: 9; }
Technologies Used
- HTML / CSS
About the code
Compatible browsers:- Chrome, Edge, Firefox, Opera, Safari
Responsive:- No
Dependencies: – N/A
Also Check: Search Bar Animation on Focus Using Pure HTML and CSS