JSFiddle - React, Tailwind, and code Playground

by Nenad Novakovic

HTML

<div id="menu_outer">
    <ul id="menu_inner" class="clearfix">
        <li class="active">
            <a href="javascript:;">Item 1</a>
        </li>
        <li>
            <a href="javascript:;" class="subber">Item 2</a>
            
            <ul class="menu_subber clearfix">
                <li>
                    <a href="javascript:;">Item 2a</a>
                </li>
                <li>
                    <a href="javascript:;">Item 2b</a>
                </li>
            </ul>
        </li>
        <li>
            <a href="javascript:;">Item 3</a>
        </li>
        <li>
            <a href="javascript:;" class="subber">Item 4</a>
            
            <ul class="menu_subber clearfix">
                <li>
                    <a href="javascript:;">Item 2a</a>
                </li>
                <li>
                    <a href="javascript:;">Item 2b</a>
                </li>
            </ul>
        </li>
    </ul>
</div>

<div id="content">
    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptates dolores quidem sequi ipsam odio ratione vitae amet veritatis eveniet quae laborum rem deserunt adipisci quibusdam cumque iure inventore nostrum nihil.
</div>

CSS

@import url(http://fonts.googleapis.com/css?family=Ubuntu:300,400);

body {
    background: #555;
    font: 12px/1.3em 'Ubuntu', sans-serif;
    color: #fefefe;
}

a {
    color: #666;
    text-decoration: none;
}

ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.blur {
   	-ms-filter: blur(1px);
	-webkit-filter: blur(1px);
	-moz-filter: blur(1px);
	-o-filter: blur(1px);
	filter: progid:DXImageTransform.Microsoft.Blur(pixelradius=1);
}

#menu_outer {
    font-weight: normal;
    position: relative;
    text-align: center;
    margin: 17px 0;
    z-index: 20;
}

#menu_inner {
    list-style-type: none;
    font-size: 15px;
    letter-spacing: 1px;
    padding: 0;
    margin: 0;
    display: inline-block;
}

#menu_inner li {
    float: left;
    position: relative;
}

#menu_inner li a {
    position: relative;
    display: block;
    padding: 5px 20px;
    overflow: hidden;
    z-index: 10;
    color: #999;
    text-align: center;
    text-transform: capitalize;
}

#menu_inner .active a {
    border-bottom: 2px solid #c88;
    color: #fff;
}

#menu_inner a {
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

#menu_inner li:not(.active) a:hover {
    color: #fff;
}

.menu_subber {
    background: #666;
    position: absolute;
    top: 25px;
    left: 0;
    width: 100%;
    display: none;
}

.menu_subber li {
    float: none !important;
}

.menu_subber a {
    padding: 5px 0 !important;
    text-align: center;
    min-width: 100%;
}

.clearfix:before, .clearfix:after {
	content: "";
	display: block;
	height: 0;
	overflow: hidden;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	zoom: 1;
}

JavaScript

$("#menu_inner a").hover(function () {
    $(this)
        .parent()
        .siblings()
        .not('.active')
        .stop()
        .addClass('blur');
    
    $(this).closest('li').siblings().each(function () {
        $(this).find("ul").stop().slideUp(240);
    });
    
    $(this).closest('li').find('ul').stop().slideToggle(240);
}, function () {
    $(this)
        .parent()
        .siblings()
        .not('.active')
        .stop()
        .removeClass('blur');
}).closest("ul").on("mouseleave", function () {
    $(this).find("ul").stop().slideUp(240);
});