JSFiddle - React, Tailwind, and code Playground
HTML
<div class="menu">
<div class="navigation">icon Home</div>
<div class="dropdown">
<div class="items">icon Default</div>
<div class="items">icon Reports</div>
<div class="items">icon Other</div>
</div>
<div class="navigation">icon Home</div>
<div class="dropdown">
<div class="items">icon Default</div>
<div class="items">icon Reports</div>
<div class="items">icon Other</div>
</div>
</div>
CSS
.menu {
position: relative;
background-color:silver;
font-family:Arial;
font-size:12px;
height:25px;
}
body{
background-color:green;
height:300px;
}
.navigation {
float:left;
padding:5px 10px 5px 10px;
cursor:pointer;
}
.navigation::selection { background:transparent; }
.navigation::-moz-selection { background:transparent; }
.navigation:hover {
background-color:gray;
}
.navigation.active {
border:1px solid black;
border-bottom-color:white;
padding:4px 9px;
background-color: white;
position:relative;
z-index:1;
}
.dropdown {
display:none;
border:1px solid black;
border-bottom-width:2px;
background-color:white;
position:absolute;
top:24px;
padding:5px 10px;
cursor:pointer;
}
JavaScript
$('.dropdown').each(function() {
$(this).css('left', $(this).prev().position().left);
});
$('.navigation').click(function(event) {
$(this).siblings('.navigation.active').click();
$(this).toggleClass('active').next().toggle();
event.stopPropagation();
});
$(document).click(function(event) {
$('.navigation.active').click();
$('.navigation').removeClass("active");
});