Pure CSS Responsive Flexbox Navigation that automatically turns normal horizontal navigation into a sliding hamburger menu. Based on CSS transitions, flexbox, and checkbox + label tricks.
flexbox responsive navbar, flexbox dropdown menu responsive, flexbox navbar example, responsive navigation bar templates, responsive navigation menu css
TOC Animated Side Navigation For Long Web Content
How to make use of it:
1. Add your own menu list using the hamburger toggle button to your navigation item:
<nav> <input type="checkbox" id="checkbox-demo"> <label for="checkbox-demo"> <ul class="menu demo"> <li><a href="#">HOME</a></li> <li><a href="#">ABOUT</a></li> <li><a href="#">CONTACT</a></li> <li><a href="#">BLOG</a></li> </ul> <span class="toggle">☰</span> </label> </nav>
2. Design a regular horizontal navigation menu.
nav { margin: 50px auto; max-width: 700px; width: 95%; font-family: 'Roboto Condensed', sans-serif; } #checkbox1, .toggle { display: none; } .menu { padding: 0; margin: 0; max-width: 700px; height: 50px; border-radius: 5px; display: flex; flex-direction: row; justify-content: space-around; align-items: center; list-style-type: none; } .menu li a { text-decoration: none; align-self: center; border-radius: 5px; font-size: 14px; padding: 10px 15px; transition: background .2s linear; }
3. Design a hamburger menu on small screens.
@media screen and (max-width: 600px) { .menu li a { font-size: 13px; } } @media screen and (max-width: 550px) { .toggle { clear: both; display: block; text-align: center; font-size: 14px; line-height: 40px; cursor: pointer; width: 100%; height: 40px; font-size: 18px; color: #595959; background: #dbdbdb; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; transition: all .1s linear; } .toggle:hover { background: #cecece; } #checkbox1:checked + label .demo li { opacity: 1; visibility: visible; transition: all .7s linear; } #checkbox1:checked + label .demo { height: 200px; } .menu { border-radius: 0px; border-top-left-radius: 5px; border-top-right-radius: 5px; display: flex; flex-direction: column; justify-content: space-around; align-items: center; height: 0px; transition: height .3s linear; } .menu li { display: flex; /* magic */ align-self: center; width: 95%; opacity: 0; visibility: hidden; } .menu li a { width: 95%; text-align: center; align-self: center; align-content: center; } }
Pure CSS Responsive Flexbox Navigation Plugin/Codepen
See Demo And Download
Official Website(mburakerman): Click Here
This superior jQuery/javascript plugin is developed by mburakerman. For extra Advanced usage, please go to the official website.