JSFiddle - React, Tailwind, and code Playground
by lustre
HTML
<div id="responsiveMenuWrapper">
<div id="responsiveMenu">Menu</div>
<div id="responsiveMenuLi">
<ul>
<a href="#"><li>Home</li></a>
<li><a href="#">Home</a></li>
<li><a href="#">Home</a></li>
<li><a href="#">Home</a></li>
<li><a href="#">Home</a></li>
</ul>
</div>
</div>
CSS
#responsiveMenu {
display:block;
border-radius: 10px;
width:100%;
height:40px;
background:#ededed;
text-align:center;
line-height:40px;
color:#191665;
font-weight:bold;
}
#responsiveMenu:hover {
cursor:pointer;
}
#responsiveMenuOpen {
border-radius: 10px 10px 0 0 !important;
}
#responsiveMenuLi {
display:none;
background:#fff;
z-index:10000;
margin:0 auto;
}
#responsiveMenuLi li {
display:block;
width:100%;
background:#ededed;
border-bottom:1px solid #191665;
padding:5px;
}
#responsiveMenuLi li:hover {
background:#fff;
border-bottom:1px solid #83c139;
color:#83c139;
}
#responsiveMenuLi a {
color:#191665;
text-decoration:none;
}
#responsiveMenuLi li:hover a {
color:#83c139;
}
.responsiveMenu-close:hover {
background-position: left bottom;
}
.showMenu {
display:block !important;
}
JavaScript
$(document).ready(function(){
var clicked = 0;
$('#responsiveMenu').click(function(){
if(clicked==0) {
$('#responsiveMenuLi').slideDown(1200, function(){
$('#responsiveMenuLi').addClass('showMenu');
$('#responsiveMenu').addClass('responsiveMenuOpen');
});
clicked = 1;
return;
} else {
$('#responsiveMenuLi').slideUp(1200, function(){
$('#responsiveMenuLi').removeClass('showMenu');
$('#responsiveMenu').removeClass('responsiveMenuOpen');
});
clicked = 0;
return;
}
});
});