JSFiddle - React, Tailwind, and code Playground
by shaswata tripathy
HTML
<ul id="accordion" class="accordion">
<li>
<div class="link">Menu 2</div>
<ul class="submenu">
<li ><a href="#">submenu1</a></li>
<li><a href="#">submenu1</a></li>
<li><a href="#">submenu1</a></li>
</ul>
</li>
<li>
<div class="link">Menu 3</div>
<ul class="submenu">
<li><a href="#">submenu1</a></li>
<li><a href="#">submenu1</a></li>
<li><a href="#">submenu1</a></li>
</ul>
</li>
</ul>
CSS
.accordion {
width: 100%;
max-width: 260px;
background: #FFF;
margin: 0;
padding: 0;
box-sizing:border-box;
}
.accordion .link {
cursor: pointer;
display: block;
padding: 15px 15px 15px 42px;
font-size: 14px;
font-weight: 700;
border-top: 1px solid #CCC;
border-bottom: 1px solid #CCC;
border-right: 1px solid #CCC;
position: relative;
-webkit-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all 0.4s ease;
}
/*-------------Submenu-----------------------------*/
.submenu {
padding:0px;
display: none;
font-size: 14px;
}
.submenu li { border-bottom: 1px solid #4b4a5e; }
.submenu a {
display: block;
text-decoration: none;
color: #23222d;
background-color:#CCC;
padding: 12px;
padding-left: 42px;
-webkit-transition: all 0.25s ease;
-o-transition: all 0.25s ease;
transition: all 0.25s ease;
}
#submenu li.active {
display: block;
}
.submenu a:hover {
background: #b63b4d;
color: #FFF;
}
JavaScript
$(document).ready(function () {
$("#accordion > li > div").click(function () {
$("#submenu li").slideUp();
if (!$(this).next().is(":visible")) {
$(this).next().slideDown();
}
});
});