JSFiddle - React, Tailwind, and code Playground
by genelocklin
HTML
<ul class="menu">
<li><a href="#">Link 1</a></li>
<li><a href="#">Link 2</a>
<ul class="submenu">
<li><a href="#">Link 1</a></li>
<li><a href="#">Link 2</a></li>
<li><a href="#">Link 3</a> </li>
</ul>
</li>
<li><a href="#">Link 3 </a></li>
</ul>
CSS
body {
padding: 15px;
}
.menu, .menu ul {
padding: 0;
margin: 0;
list-style: none;
}
.menu li {
float: left;
padding-right: 1px;
position: relative;
}
.menu a {
font-family: "Helvetica Neue", Arial, sans-serif;
font-size: 14px;
font-weight: bold;
color: #fff;
display: block;
padding: 15px 30px;
background-color: #454545;
text-decoration: none;
transition: all 0.3s ease;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
}
.menu li:hover a {
background-color: #979797;
}
.menu ul {
position: absolute;
width: 102px;
top: 48px;
left: 0;
opacity: 0;
transition: all 0.3s ease-in;
-webkit-transition: all 0.3s ease-in;
-moz-transition: all 0.3s ease-in;
visibility: hidden;
}
.menu ul li {
padding-bottom: 1px;
position: relative;
}
.menu ul a {
background-color: #979797;
transition: all 0.3s ease;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
}
.menu ul a:hover {
background-color: #454545;
}
.menu li:hover > ul {
opacity: 1;
visibility: visible;
}
.menu ul ul {
position: absolute;
top: 0;
left: 101px;
opacity: 0;
transition: all 0.3s ease-in;
-webkit-transition: all 0.3s ease-in;
-moz-transition: all 0.3s ease-in;
}
.menu ul ul a {
background-color: #454545;
}
.menu ul ul a:hover {
background-color: #979797;
}
.menu ul li:hover ul {
opacity: 1;
}