How do i add dropdown items to my horizontal menu bar? - html

hi i am trying to add a drop down item to my horizontal menu bar. i would like the drop down item to be "Parish council minutes" under "parish council information" like these but in my styles:
(http://www2.psd100.com/wp-content/uploads/2013/03/web-dropdown-menu-bar-psd0306.jpg)
i also intend to add a few more drop down menu item in different locations.
many thank in advance.
my css:
my css:
#cssmenu {
background: #f96e5b;
width: 1404px;
margin-right:auto;
margin-left:auto;
padding:0;
}
#cssmenu ul {
list-style: none;
margin: 0%;
padding: 0%;
line-height: 1;
display: block;
zoom: 1;
width:100%
}
#cssmenu ul:after {
content: " ";
display: block;
font-size: 0%;
height: 0%;
clear: both;
visibility: hidden;
}
#cssmenu ul li {
display: inline-block;
padding: 0%;
margin: 0%;
}
#cssmenu.align-right ul li {
float: right;
}
#cssmenu.align-center ul {
text-align: center;
}
#cssmenu ul li a {
color: #ffffff;
text-decoration: none;
display: block;
padding: 15px 25px;
font-family: 'Open Sans', sans-serif;
font-weight: 700;
text-transform: uppercase;
font-size: 14px;
position: relative;
-webkit-transition: color .25s;
-moz-transition: color .25s;
-ms-transition: color .25s;
-o-transition: color .25s;
transition: color .25s;
}
#cssmenu ul li a:hover {
color: #333333;
}
#cssmenu ul li a:hover:before {
width: 100%;
}
#cssmenu ul li a:after {
content: "";
display: block;
position: absolute;
right: -3px;
top: 19px;
height: 6px;
width: 6px;
background: #ffffff;
opacity: .5;
}
#cssmenu ul li a:before {
content: "";
display: block;
position: absolute;
left: 0;
bottom: 0;
height: 3px;
width: 0;
background: #333333;
-webkit-transition: width .25s;
-moz-transition: width .25s;
-ms-transition: width .25s;
-o-transition: width .25s;
transition: width .25s;
}
#cssmenu ul li.last > a:after,
#cssmenu ul li:last-child > a:after {
display: none;
}
#cssmenu ul li.active a {
color: #333333;
}
#cssmenu ul li.active a:before {
width: 100%;
}
#cssmenu.align-right li.last > a:after,
#cssmenu.align-right li:last-child > a:after {
display: block;
}
#cssmenu.align-right li:first-child a:after {
display: none;
}
#media screen and (max-width: 100%) {
#cssmenu ul li {
float: none;
display: block;
}
#cssmenu ul li a {
width: 100%;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
border-bottom: 1px solid #fb998c;
}
#cssmenu ul li.last > a,
#cssmenu ul li:last-child > a {
border: 0;
}
#cssmenu ul li a:after {
display: none;
}
#cssmenu ul li a:before {
display: none;
}
}
#menubar2 {
width:400px;
margin-left:auto;
margin-right:auto;
}
my html:
<div id='cssmenu'>
<ul>
<li class='active'>
<li>Home</li>
<li>Parish Council information</li>
<li>What's on </li>
<li>History</li>
<li>Churches</li>
<li>Newsletter</li>
<li>Village Halls and Social Clubs </li>
<li>Gallery</li>
<div id="menubar2">
<li>Business in Runtons</li>
<li>Contact us</li>
</div>
</ul>
</div>

Put your "flyouts" (lets call it like this cause thats what is is) into your LI's.
Like this:
HTML:
<ul> <!-- this is your horizontal menu bar ul -->
<li>
Some Page
<div class="flyout_container">
<ul>
<li>Some Subpage of Some page
</ul>
</div>
</li>
</ul>
CSS:
ul > li
{
display:block;
position:relative;
height:30px;
}
ul > li .flyout_container
{
position:absolute;
top:30px; /* this is the LI's height*/
left:0;
display:none;
}
ul > li:hover .flyout_container
{
display:block;
}
Normal state you just see the first level and once u hover an LI with a flyout_container in it, it will appear located as you wished on the given screenshot.

Related

Get rid of the padding at the beginning and end of navbar so all content fits in one line

My navbar contents are displaying in two lines i want them to display in one line and get rid of the padding the beginning and end of navbar but i cant seem to identify the problem. any help would be appreciated,
* {
margin: 0;
padding: 0;
text-decoration: none
}
body {
background: #555;
}
header {
position: relative;
width: 100%;
background: #333;
}
.logo {
position: relative;
z-index: 123;
padding: 10px;
font: 18px verdana;
color: #6DDB07;
float: left;
width: 15%
}
.logo a {
color: #6DDB07;
}
nav {
position: relative;
width: 980px;
margin: 0 auto;
}
#cssmenu,
#cssmenu ul,
#cssmenu ul li,
#cssmenu ul li a,
#cssmenu #head-mobile {
border: 0;
list-style: none;
line-height: 1;
display: block;
position: relative;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box
}
#cssmenu:after,
#cssmenu > ul:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0
}
#cssmenu #head-mobile {
display: none
}
#cssmenu {
font-family: sans-serif;
background: #333
}
#cssmenu > ul > li {
float: left
}
#cssmenu > ul > li > a {
padding: 17px;
font-size: 12px;
letter-spacing: 1px;
text-decoration: none;
color: #ddd;
font-weight: 700;
}
#cssmenu > ul > li:hover > a,
#cssmenu ul li.active a {
color: #fff
}
#cssmenu > ul > li:hover,
#cssmenu ul li.active:hover,
#cssmenu ul li.active,
#cssmenu ul li.has-sub.active:hover {
background: #448D00!important;
-webkit-transition: background .3s ease;
-ms-transition: background .3s ease;
transition: background .3s ease;
}
#cssmenu > ul > li.has-sub > a {
padding-right: 30px
}
#cssmenu > ul > li.has-sub > a:after {
position: absolute;
top: 22px;
right: 11px;
width: 8px;
height: 2px;
display: block;
background: #ddd;
content: ''
}
#cssmenu > ul > li.has-sub > a:before {
position: absolute;
top: 19px;
right: 14px;
display: block;
width: 2px;
height: 8px;
background: #ddd;
content: '';
-webkit-transition: all .25s ease;
-ms-transition: all .25s ease;
transition: all .25s ease
}
#cssmenu > ul > li.has-sub:hover > a:before {
top: 23px;
height: 0
}
#cssmenu ul ul {
position: absolute;
left: -9999px
}
#cssmenu ul ul li {
height: 0;
-webkit-transition: all .25s ease;
-ms-transition: all .25s ease;
background: #333;
transition: all .25s ease
}
#cssmenu ul ul li:hover {} #cssmenu li:hover > ul {
left: auto
}
#cssmenu li:hover > ul > li {
height: 35px
}
#cssmenu ul ul ul {
margin-left: 100%;
top: 0
}
#cssmenu ul ul li a {
border-bottom: 1px solid rgba(150, 150, 150, 0.15);
padding: 11px 15px;
width: 170px;
font-size: 12px;
text-decoration: none;
color: #ddd;
font-weight: 400;
}
#cssmenu ul ul li:last-child > a,
#cssmenu ul ul li.last-item > a {
border-bottom: 0
}
#cssmenu ul ul li:hover > a,
#cssmenu ul ul li a:hover {
color: #fff
}
#cssmenu ul ul li.has-sub > a:after {
position: absolute;
top: 16px;
right: 11px;
width: 8px;
height: 2px;
display: block;
background: #ddd;
content: ''
}
#cssmenu ul ul li.has-sub > a:before {
position: absolute;
top: 13px;
right: 14px;
display: block;
width: 2px;
height: 8px;
background: #ddd;
content: '';
-webkit-transition: all .25s ease;
-ms-transition: all .25s ease;
transition: all .25s ease
}
#cssmenu ul ul > li.has-sub:hover > a:before {
top: 17px;
height: 0
}
#cssmenu ul ul li.has-sub:hover,
#cssmenu ul li.has-sub ul li.has-sub ul li:hover {
background: #363636;
}
#cssmenu ul ul ul li.active a {
border-left: 1px solid #333
}
#cssmenu > ul > li.has-sub > ul > li.active > a,
#cssmenu > ul ul > li.has-sub > ul > li.active> a {
border-top: 1px solid #333
}
#media screen and (max-width: 1000px) {
.logo {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 46px;
text-align: center;
padding: 10px 0 0 0;
float: none
}
.logo2 {
display: none
}
nav {
width: 100%;
}
#cssmenu {
width: 100%
}
#cssmenu ul {
width: 100%;
display: none
}
#cssmenu ul li {
width: 100%;
border-top: 1px solid #444
}
#cssmenu ul li:hover {
background: #363636;
}
#cssmenu ul ul li,
#cssmenu li:hover > ul > li {
height: auto
}
#cssmenu ul li a,
#cssmenu ul ul li a {
width: 100%;
border-bottom: 0
}
#cssmenu > ul > li {
float: none
}
#cssmenu ul ul li a {
padding-left: 25px
}
#cssmenu ul ul li {
background: #333!important;
}
#cssmenu ul ul li:hover {
background: #363636!important
}
#cssmenu ul ul ul li a {
padding-left: 35px
}
#cssmenu ul ul li a {
color: #ddd;
background: none
}
#cssmenu ul ul li:hover > a,
#cssmenu ul ul li.active > a {
color: #fff
}
#cssmenu ul ul,
#cssmenu ul ul ul {
position: relative;
left: 0;
width: 100%;
margin: 0;
text-align: left
}
#cssmenu > ul > li.has-sub > a:after,
#cssmenu > ul > li.has-sub > a:before,
#cssmenu ul ul > li.has-sub > a:after,
#cssmenu ul ul > li.has-sub > a:before
{
display: none
}
#cssmenu #head-mobile {
display: block;
padding: 23px;
color: #ddd;
font-size: 12px;
font-weight: 700
}
.button {
width: 55px;
height: 46px;
position: absolute;
right: 0;
top: 0;
cursor: pointer;
z-index: 12399994;
}
.button:after {
position: absolute;
top: 22px;
right: 20px;
display: block;
height: 4px;
width: 20px;
border-top: 2px solid #dddddd;
border-bottom: 2px solid #dddddd;
content: ''
}
.button:before {
-webkit-transition: all .3s ease;
-ms-transition: all .3s ease;
transition: all .3s ease;
position: absolute;
top: 16px;
right: 20px;
display: block;
height: 2px;
width: 20px;
background: #ddd;
content: ''
}
.button.menu-opened:after {
-webkit-transition: all .3s ease;
-ms-transition: all .3s ease;
transition: all .3s ease;
top: 23px;
border: 0;
height: 2px;
width: 19px;
background: #fff;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg)
}
.button.menu-opened:before {
top: 23px;
background: #fff;
width: 19px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg)
}
#cssmenu .submenu-button {
position: absolute;
z-index: 99;
right: 0;
top: 0;
display: block;
border-left: 1px solid #444;
height: 46px;
width: 46px;
cursor: pointer
}
#cssmenu .submenu-button.submenu-opened {
background: #262626
}
#cssmenu ul ul .submenu-button {
height: 34px;
width: 34px
}
#cssmenu .submenu-button:after {
position: absolute;
top: 22px;
right: 19px;
width: 8px;
height: 2px;
display: block;
background: #ddd;
content: ''
}
#cssmenu ul ul .submenu-button:after {
top: 15px;
right: 13px
}
#cssmenu .submenu-button.submenu-opened:after {
background: #fff
}
#cssmenu .submenu-button:before {
position: absolute;
top: 19px;
right: 22px;
display: block;
width: 2px;
height: 8px;
background: #ddd;
content: ''
}
#cssmenu ul ul .submenu-button:before {
top: 12px;
right: 16px
}
#cssmenu .submenu-button.submenu-opened:before {
display: none
}
#cssmenu ul ul ul li.active a {
border-left: none
}
#cssmenu > ul > li.has-sub > ul > li.active > a,
#cssmenu > ul ul > li.has-sub > ul > li.active > a {
border-top: none
}
following is the html of my code. my goal is to bring all the content in one centered navbar but i keep messing it up. can anyone help with what i am doing wrong. i would very much appreciate it.
<nav id='cssmenu'>
<div class="logo">something </div>
<div id="head-mobile"></div>
<div class="button"></div>
<ul>
<li><a href='#'>something</a></li>
<li><a href='#'>something</a>
<ul>
<li>something
</li>
<li>something
</li>
</ul>
</li>
<li>something
<ul>
<li>something</li>
</ul>
</li>
<li >something
<ul>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
</ul>
</li>
<li>something
<ul>
<li>something</li>
</ul>
</li>
<li>something
<ul>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
<li>something</li>
</ul>
</li>
<li>something</li>
</li>
</ul>
</nav>
From my investigation there are some optimizations you can do to enhance the layout performance of your navbar.
Update the width of the nav: nav {width: 100%;}
Dont really understand why the logo has width:15%? Update to .logo {width: auto;}
Align the nav-list to the right: #cssmenu > ul {float:right;}
Align the items on second level to the left: #cssmenu ul ul a {text-align: left;}
Additionally if you want the logo in the center for mobile add this:
#media screen and (max-width: 1000px) {
.logo {
left: 50%;
transform: translateX(-50%);
}
}
Regarding your responsive styles I dont add the complete snippet here, rather link to this jsfiddle I created: https://jsfiddle.net/kv6a7hud/
You can try
nav {
position: relative;
width: 100%;
margin: 0 auto;
}
Change width to 100% instead of 980px

Creating submenu in nav menu

I want to create submenu in my nav menu. i have little knowledge of css.
but facing some prob.
when i add submenu into nav menu. menu shows as ul li,direct ally.
#cssmenu {
background: #88BC18;
width: auto;
z-index: 1;
position: relative;
}
#cssmenu ul {
list-style: none;
margin: 0;
padding: 0;
line-height: 1;
display: block;
zoom: 1;
}
#cssmenu ul:after {
content: " ";
display: block;
font-size: 0;
height: 0;
clear: both;
visibility: hidden;
}
#cssmenu ul li {
display: inline-block;
padding: 0;
margin: 0;
}
#cssmenu.align-right ul li {
float: right;
}
#cssmenu.align-center ul {
text-align: center;
}
#cssmenu ul li a {
color: #ffffff;
text-decoration: none;
display: block;
padding: 15px 25px;
font-family: 'Open Sans', sans-serif;
font-weight: 700;
text-transform: uppercase;
font-size: 14px;
position: relative;
-webkit-transition: color .25s;
-moz-transition: color .25s;
-ms-transition: color 25s;
-o-transition: color .25s;
transition: color .25s;
}
#cssmenu ul li a:hover {
color: #004900;
}
#cssmenu ul li a:hover:before {
width: 100%;
}
#cssmenu ul li a:before {
content: "";
display: block;
position: absolute;
left: 0;
bottom: 0;
height: 3px;
width: 0;
background: #004900;
-webkit-transition: width .25s;
-moz-transition: width .25s;
-ms-transition: width 25s;
-o-transition: width .25s;
transition: width .25s;
}
#cssmenu ul li a:after {
content: "";
display: block;
position: absolute;
right: -3px;
top: 19px;
height: 6px;
width: 6px;
background: #ffffff;
opacity: .5;
}
#cssmenu ul li.last>a:after,
#cssmenu ul li:last-child>a:after {
display: none;
}
#cssmenu ul li.active a {
color: #004900;
}
#cssmenu ul li.active a:before {
width: 100%;
}
#cssmenu.align-right li.last>a:after,
#cssmenu.align-right li:last-child>a:after {
display: block;
}
#cssmenu.align-right li:first-child a:after {
display: none;
}
<div id="navWrap">
<nav class="nav">
<div id="cssmenu" class="centered">
<ul>
<li class='first'><span>Home</span></li>
<li><span>Features</span></li>
<li><span>About</span></li>
<li><span>Prices</span></li>
<li><span>F.A.Q</span></li>
<li><span>How to Use</span></li>
<li><span>Contact</span></li>
<li><span>Log In</span></li>
<li class="last"><span>Help</span></li>
</ul>
</div>
</nav>
</div>
This should help you get started. Added css for submenu.
Check the About Link now.
#cssmenu {
background: #88BC18;
width: auto;
z-index: 1;
position: relative;
}
#cssmenu ul {
list-style: none;
margin: 0;
padding: 0;
line-height: 1;
display: block;
zoom: 1;
}
#cssmenu ul:after {
content: " ";
display: block;
font-size: 0;
height: 0;
clear: both;
visibility: hidden;
}
#cssmenu ul li {
display: inline-block;
padding: 0;
margin: 0;
}
#cssmenu.align-right ul li {
float: right;
}
#cssmenu.align-center ul {
text-align: center;
}
#cssmenu ul li a {
color: #ffffff;
text-decoration: none;
display: block;
padding: 15px 25px;
font-family: 'Open Sans', sans-serif;
font-weight: 700;
text-transform: uppercase;
font-size: 14px;
position: relative;
-webkit-transition: color .25s;
-moz-transition: color .25s;
-ms-transition: color 25s;
-o-transition: color .25s;
transition: color .25s;
}
#cssmenu ul li a:hover {
color: #004900;
}
#cssmenu ul li a:hover:before {
width: 100%;
}
#cssmenu ul li a:before {
content: "";
display: block;
position: absolute;
left: 0;
bottom: 0;
height: 3px;
width: 0;
background: #004900;
-webkit-transition: width .25s;
-moz-transition: width .25s;
-ms-transition: width 25s;
-o-transition: width .25s;
transition: width .25s;
}
#cssmenu ul li a:after {
content: "";
display: block;
position: absolute;
right: -3px;
top: 19px;
height: 6px;
width: 6px;
background: #ffffff;
opacity: .5;
}
#cssmenu ul li.last>a:after,
#cssmenu ul li:last-child>a:after {
display: none;
}
#cssmenu ul li.active a {
color: #004900;
}
#cssmenu ul li.active a:before {
width: 100%;
}
/* New CSS for Sub Menu */
#cssmenu ul li {
position: relative;
}
#cssmenu ul ul {
position: absolute;
top: 100%;
left: 0;
background: #88BC18;
display: none;
}
#cssmenu ul li:hover ul {
display: block;
}
#cssmenu ul ul li a {
white-space: nowrap;
}
<div id="navWrap">
<nav class="nav">
<div id="cssmenu" class="centered">
<ul>
<li class='first'><span>Home</span></li>
<li><span>Features</span></li>
<li><span>About</span>
<ul>
<li>Sub Item</li>
<li>Sub Item</li>
<li>Sub Item</li>
</ul>
</li>
<li><span>Prices</span></li>
</ul>
</div>
</nav>
I've added the second item in menu to add a submenu in it and added two selector on the bottom of css. Here is the sample
HTML
<div id="navWrap">
<nav class="nav">
<div id="cssmenu" class="centered">
<ul>
<li class='first'><span>Home</span></li>
<li><span>Have submenu</span>
<ul class="submenu">
<li>submenu one</li>
<li>submenu two</li>
</ul>
</li>
<li><span>About</span></li>
<li><span>Prices</span></li>
<li><span>F.A.Q</span>
</li>
<li><span>How to Use</span></li>
<li><span>Contact</span></li>
<li><span>Log In</span></li>
<li class="last"><span>Help</span></li>
</ul>
</div>
</nav>
</div>
CSS
#cssmenu {background: #88BC18;width: auto;z-index: 1; position: relative;}
#cssmenu ul {list-style: none; margin: 0; padding: 0; line-height: 1; display: block; zoom: 1; }
#cssmenu ul:after {content: " ";display: block;font-size: 0;height: 0; clear: both;visibility: hidden;}
#cssmenu ul li { display: inline-block;padding: 0;margin: 0;}
#cssmenu.align-right ul li {float: right;}
#cssmenu.align-center ul {text-align: center;}
#cssmenu ul li a {color: #ffffff;text-decoration: none;display: block; padding: 15px 25px;font-family: 'Open Sans', sans-serif;font-weight: 700; text-transform: uppercase;font-size: 14px;position: relative;-webkit-transition: color .25s;-moz-transition: color .25s;-ms-transition: color 25s;-o-transition: color .25s;transition: color .25s;}
#cssmenu ul li a:hover {color: #004900;}
#cssmenu ul li a:hover:before {width: 100%;}
#cssmenu ul li a:before {content: "";display: block;position: absolute; left: 0;bottom: 0; height: 3px;width: 0;background: #004900;-webkit-transition: width .25s;-moz-transition: width .25s;-ms-transition: width 25s; -o-transition: width .25s;transition: width .25s;}
#cssmenu ul li a:after {content: "";display: block;position: absolute; right: -3px; top: 19px;height: 6px; width: 6px;background: #ffffff;opacity: .5;}
#cssmenu ul li.last > a:after,
#cssmenu ul li:last-child > a:after {display: none;}
#cssmenu ul li.active a {color: #004900;}
#cssmenu ul li.active a:before {width: 100%;}
#cssmenu.align-right li.last > a:after,
#cssmenu.align-right li:last-child > a:after {display: block;}
#cssmenu.align-right li:first-child a:after {display: none;}
#cssmenu .submenu{
display:none;
}
#cssmenu li:hover > ul{
display:block;
width:200px;
z-index: 10;
position: absolute;
left: 100px;
top: 44px;
background: #88BC18;
}

Why I click on right side nav it doesn't show up item of ul li i wan't make it responsive

How to fix it it doesn't work on small screen it show right sidenav icon but I click it it doesn't show up. I want it to be show example Home, Menu, and submenu in small screen but why it can't be.
This is html file:
<div class="row preview-html" ng-show="screen == 'preview'" ng-hide="loading">
<div class="col-md-12"><div id="cssmenu"><div id="menu-button">Menu</div>
<ul>
<li class="active"><span><i class="fa fa-fw fa-home"></i> Home</span></li>
<li class="has-sub"><span><i class="fa fa-fw fa-bars"></i> Menus</span>
<ul>
<li class="has-sub"><span>Menu 1</span>
<ul>
<li><span>Menu 1.1</span></li>
<li><span>Menu 1.2</span></li>
</ul>
</li>
<li><span>Menu 2</span></li>
</ul>
</li>
<li><span><i class="fa fa-fw fa-cog"></i> Settings</span></li>
<li><span><i class="fa fa-fw fa-phone"></i> Contact</span></li>
</ul>
</div></div>
</div>
This is css:
#cssmenu {
background: #2a8a8f;
margin: 0;
width: auto;
padding: 0;
line-height: 1;
display: block;
position: relative;
font-family: 'PT Sans', sans-serif;
box-sizing: content-box;
}
#cssmenu ul {
list-style: none;
margin: 0;
padding: 0;
display: block;
}
#cssmenu ul:after,
#cssmenu:after {
content: " ";
display: block;
font-size: 0;
height: 0;
clear: both;
visibility: hidden;
}
#cssmenu ul li {
margin: 0;
padding: 0;
display: block;
position: relative;
}
#cssmenu ul li a {
text-decoration: none;
display: block;
margin: 0;
-webkit-transition: color .2s ease;
-moz-transition: color .2s ease;
-ms-transition: color .2s ease;
-o-transition: color .2s ease;
transition: color .2s ease;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
#cssmenu ul li ul {
position: absolute;
left: -9999px;
top: auto;
z-index: 999;
}
#cssmenu ul li ul li {
max-height: 0;
position: absolute;
-webkit-transition: max-height 0.4s ease-out;
-moz-transition: max-height 0.4s ease-out;
-ms-transition: max-height 0.4s ease-out;
-o-transition: max-height 0.4s ease-out;
transition: max-height 0.4s ease-out;
background: #fff;
}
#cssmenu ul li ul li.has-sub:after {
display: block;
position: absolute;
content: "";
height: 10px;
width: 10px;
border-radius: 5px;
background: #000;
z-index: 1;
top: 13px;
right: 15px;
}
#cssmenu.align-right ul li ul li.has-sub:after {
right: auto;
left: 15px;
}
#cssmenu ul li ul li.has-sub:before {
display: block;
position: absolute;
content: "";
height: 0;
width: 0;
border: 3px solid transparent;
border-left-color: #fff;
z-index: 2;
top: 15px;
right: 15px;
}
#cssmenu.align-right ul li ul li.has-sub:before {
right: auto;
left: 15px;
border-left-color: transparent;
border-right-color: #fff;
}
#cssmenu ul li ul li a {
font-size: 14px;
font-weight: 400;
text-transform: none;
color: #000;
letter-spacing: 0;
display: block;
width: 170px;
padding: 11px 10px 11px 20px;
}
#cssmenu ul li ul li:hover > a,
#cssmenu ul li ul li.active > a {
color: #4cb6ea;
}
#cssmenu ul li ul li:hover:after,
#cssmenu ul li ul li.active:after {
background: #4cb6ea;
}
#cssmenu ul li ul li:hover > ul {
left: 100%;
top: 0;
}
#cssmenu ul li ul li:hover > ul > li {
max-height: 72px;
position: relative;
}
#cssmenu > ul > li {
float: left;
}
#cssmenu.align-center > ul > li {
float: none;
display: inline-block;
}
#cssmenu.align-center > ul {
text-align: center;
font-size: 0;
}
#cssmenu.align-center ul ul {
text-align: left;
}
#cssmenu.align-right > ul {
float: right;
}
#cssmenu.align-right > ul > li:hover > ul {
left: auto;
right: 0;
}
#cssmenu.align-right ul ul li:hover > ul {
right: 100%;
left: auto;
}
#cssmenu.align-right ul ul li a {
text-align: right;
}
#cssmenu > ul > li:after {
content: "";
display: block;
position: absolute;
width: 100%;
height: 0;
top: 0;
z-index: 0;
background: #fff;
-webkit-transition: height .2s;
-moz-transition: height .2s;
-ms-transition: height .2s;
-o-transition: height .2s;
transition: height .2s;
}
#cssmenu > ul > li.has-sub > a {
padding-right: 40px;
}
#cssmenu > ul > li.has-sub > a:after {
display: block;
content: "";
background: #fff;
height: 12px;
width: 12px;
position: absolute;
border-radius: 13px;
right: 14px;
top: 16px;
}
#cssmenu > ul > li.has-sub > a:before {
display: block;
content: "";
border: 4px solid transparent;
border-top-color: #2a8a8f;
z-index: 2;
height: 0;
width: 0;
position: absolute;
right: 16px;
top: 21px;
}
#cssmenu > ul > li > a {
color: #fff;
padding: 15px 20px;
font-weight: 700;
letter-spacing: 1px;
text-transform: uppercase;
font-size: 14px;
z-index: 2;
position: relative;
}
#cssmenu > ul > li:hover:after,
#cssmenu > ul > li.active:after {
height: 100%;
}
#cssmenu > ul > li:hover > a,
#cssmenu > ul > li.active > a {
color: #000;
}
#cssmenu > ul > li:hover > a:after,
#cssmenu > ul > li.active > a:after {
background: #000;
}
#cssmenu > ul > li:hover > a:before,
#cssmenu > ul > li.active > a:before {
border-top-color: #fff;
}
#cssmenu > ul > li:hover > ul {
left: 0;
}
#cssmenu > ul > li:hover > ul > li {
max-height: 72px;
position: relative;
}
#cssmenu #menu-button {
display: none;
}
#cssmenu > ul > li > a {
display: block;
}
#cssmenu > ul > li {
width: auto;
}
#cssmenu > ul > li > ul {
width: 170px;
display: block;
}
#cssmenu > ul > li > ul > li {
width: 170px;
display: block;
}
#media all and (max-width: 800px), only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1024px), only screen and (min-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (min-resolution: 192dpi) and (max-width: 1024px), only screen and (min-resolution: 2dppx) and (max-width: 1024px) {
#cssmenu > ul {
max-height: 0;
overflow: hidden;
-webkit-transition: max-height 0.35s ease-out;
-moz-transition: max-height 0.35s ease-out;
-ms-transition: max-height 0.35s ease-out;
-o-transition: max-height 0.35s ease-out;
transition: max-height 0.35s ease-out;
}
#cssmenu > ul > li > ul {
width: 100%;
display: block;
}
#cssmenu.align-right ul li a {
text-align: left;
}
#cssmenu > ul > li > ul > li {
width: 100%;
display: block;
}
#cssmenu.align-right ul ul li a {
text-align: left;
}
#cssmenu > ul > li > ul > li > a {
width: 100%;
display: block;
}
#cssmenu ul li ul li a {
width: 100%;
}
#cssmenu.align-center > ul {
text-align: left;
}
#cssmenu.align-center > ul > li {
display: block;
}
#cssmenu > ul.open {
max-height: 1000px;
border-top: 1px solid rgba(110, 110, 110, 0.25);
}
#cssmenu ul {
width: 100%;
}
#cssmenu ul > li {
float: none;
width: 100%;
}
#cssmenu ul li a {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
padding: 12px 20px;
}
#cssmenu ul > li:after {
display: none;
}
#cssmenu ul li.has-sub > a:after,
#cssmenu ul li.has-sub > a:before,
#cssmenu ul li ul li.has-sub:after,
#cssmenu ul li ul li.has-sub:before {
display: none;
}
#cssmenu ul li ul,
#cssmenu ul li ul li ul,
#cssmenu ul li ul li:hover > ul,
#cssmenu.align-right ul li ul,
#cssmenu.align-right ul li ul li ul,
#cssmenu.align-right ul li ul li:hover > ul {
left: 0;
position: relative;
right: auto;
}
#cssmenu ul li ul li,
#cssmenu ul li:hover > ul > li {
max-height: 999px;
position: relative;
background: none;
}
#cssmenu ul li ul li a {
padding: 8px 20px 8px 35px;
color: #fff;
}
#cssmenu ul li ul ul li a {
padding: 8px 20px 8px 50px;
}
#cssmenu ul li ul li:hover > a {
color: #000;
}
#cssmenu #menu-button {
display: block;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
padding: 15px 20px;
text-transform: uppercase;
font-weight: 700;
font-size: 14px;
letter-spacing: 1px;
color: #fff;
cursor: pointer;
}
#cssmenu #menu-button:after {
display: block;
content: '';
position: absolute;
height: 3px;
width: 22px;
border-top: 2px solid #fff;
border-bottom: 2px solid #fff;
right: 20px;
top: 16px;
box-sizing: content-box;
}
#cssmenu #menu-button:before {
display: block;`enter code here`
content: '';
position: absolute;
height: 3px;
width: 22px;
border-top: 2px solid #fff;
right: 20px;
top: 26px;
box-sizing: content-box;
}
}
You are doing a few things wrong .
1st for ul after #menu-button the overflow is hidden so it wont show the ul container even if its there.
2nd color of each link inside menu is same as background . so change it to see the contents .or change the background to black or other color since font is white .
3rd you are using :after psudo element to show the hamburger icon so use the following to add click event to :after element.
<script>
$('#cssmenu #menu-button').after().click(function(){
$('#cssmenu').toggleClass('active');
});
</scr
css to add inside #media query.
#cssmenu.active ul li a{
color: inherit;
}
#cssmenu.active #menu-button + ul{
overflow: visible;
}
#cssmenu.active #menu-button:after{
pointer-events: all;
}

Navigation Bar disappears upon window resizing

I am currently trying to build my first website, and mainly using HTML5/CSS3, I have come across as issue that I'm sure is simply solved but struggling.
My homepage is working as desired apart from the Nav Bar, when i shrink the window down, all elements such as the hgroup, footer, and main sections become scrollable.
My Nav bar however disappears when I either:
a. Zoom in too much
b. make the window small enough.
Is this easily solved?
Many Thanks
Heres my HTML(please be forgiving, i'm a real newbie):
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="css/style.css" type="text/css">
<title>Worthworks Signage</title>
</head>
<body>
<div id="container"> <!--WRAP ENTIRE DOCUMENT-->
<header>
<a href="index.html">
<img class="logo" src="images/logos/300pxbluegradient.jpg" alt="Worth Works Signage">
</a>
<hgroup>
<h1><span class="blueText">Worth</span>works Signage</h1>
<h2>Sign Design – <span class="blueText">Manufacture </span>– Installation – <span class="blueText">Refurbishment </span>– Advice</h2>
</hgroup>
<nav> <!--START OF NAVIGATION-->
<div id='cssmenu'>
<ul>
<li class='active'><a href='index.html'><span>Home</span></a></li>
<li class='has-sub'><a href='products.html'><span>Products</span></a> <!--PRODUCTS-->
<ul>
<li class='has-sub'><a href='#'><span>Signs</span></a> <!--PRODUCT SUB #1-->
<ul>
<li><a href='#'><span>Castings</span></a></li>
<li class='last'><a href='#'><span>Sub Item</span></a></li>
</ul>
</li>
<li class='has-sub'><a href='#'><span>Casting</span></a> <!--PRODUCT SUB #2-->
<ul>
<li><a href='#'><span>Sub Item</span></a></li>
<li class='last'><a href='#'><span>Sub Item</span></a></li>
</ul>
</li>
<li class='has-sub'><a href='#'><span>Site Work</span></a> <!--PRODUCT SUB #3-->
<ul>
<li><a href='#'><span>Sub Item</span></a></li>
<li class='last'><a href='#'><span>Sub Item</span></a></li>
</ul>
</li>
</ul>
</li>
<li><a href='gallery.html'><span>Gallery</span></a></li> <!--GALLERY-->
<li><a href='testimonials.html'><span>Testimonials</span></a></li> <!--TESTIMONIALS-->
<li><a href='contact.html'><span>Contact</span></a></li> <!--CONTACT US-->
<li class='last'><a href='about.html'><span>About Us</span></a></li> <!--ABOUT US-->
</ul>
</div>
</nav>
</header>
<!--END OF HEADER-->
<!--END OF NAVIGATION-->
<!-- START OF SECTION-->
<div id="section-wrap">
<div id="mainimage">Main Image Goes Here</div>
<div style="clear:both"></div>
<div id="brochure">Order your <u>FREE</u> Brochure today</div>
<div id="testimonals">SEE what our satisfied customers think..</div>
</div>
<!-- END OF SECTION-->
<div style="clear:both"></div>
<!-- START OF FOOTER-->
<footer>
<div id="wrap">
<div class="left footercol">
<h3 class="foothead">Connect</h3>
<div class="footcontent">
<ul>
<li class="facebook">Facebook</li>
<li class="twitter">Twitter</li>
</ul>
</div> <!--End of Column Content Div-->
</div> <!--End of Footer Column-->
And here is my CSS3:
*{
margin: 0 auto;
text-align:left;
}
body{
margin:0 0 300px;
width: 100%;
height:1200px;
padding:0;
font-size:13px;
font-family:helvetica neue,helvetica,arial, sans-serif;
color:#000000;
background-color: #cccccc;
}
#container{
min-height:100%;
border:1px solid black;
position:relative;
}
/* HEADER STYLING*/
header{
height:410px;
padding:0;
width:1580px;
background-color:#ffffff;
clear:both;
}
.logo{
display:inline;
margin:20px;
width:20%;
float:left;
padding:10px;
}
hgroup{
font-family:Baker Signet, Gills Sans Light;
padding-bottom:20px;
}
h1{
display:inline-block;
font-size:100px;
padding: 160px 0px 25px 10px;
color:#A1A1A1;
float:left;
}
h2{
clear:both;
display:inline-block;
font-size:28px;
padding-left:15px;
color:#A1A1A1;
float:center;
}
.blueText{
color:#4cb6ea;
font:
}
/*NAV BAR*/
nav{
width:1580px;
height:46px;
position:relative;
}
#cssmenu {
background-color: #4cb6ea;
margin: 0;
width: 1580px;
padding: 0;
line-height: 1;
border-top: 3px solid #4cb6ea;
display:inline-block;
position: relative;
font-family: Hallo Sans, sans-serif;
}
#cssmenu ul {
list-style: none;
margin: 0;
padding: 0;
display: block;
width:1540px;
}
#cssmenu ul:after {
content: ' ';
display: block;
font-size: 0;
height: 0;
clear: both;
visibility: hidden;
}
#cssmenu ul li {
margin: 0;
padding: 0;
display: block;
position: relative;
width:12%;
}
#cssmenu ul li a {
text-decoration: none;
display: block;
margin: 0;
-webkit-transition: color .2s ease;
-moz-transition: color .2s ease;
-ms-transition: color .2s ease;
-o-transition: color .2s ease;
transition: color .2s ease;
}
#cssmenu ul li ul {
position: absolute;
left: -9999px;
top: auto;
}
#cssmenu ul li ul li {
max-height: 0;
position: absolute;
-webkit-transition: max-height 0.4s ease-out;
-moz-transition: max-height 0.4s ease-out;
-ms-transition: max-height 0.4s ease-out;
-o-transition: max-height 0.4s ease-out;
transition: max-height 0.4s ease-out;
background: #ffffff;
}
#cssmenu ul li ul li.has-sub:after {
display: block;
position: absolute;
content: '';
height: 10px;
width: 10px;
border-radius: 5px;
background: #000000;
z-index: 1;
top: 13px;
right: 15px;
}
#cssmenu ul li ul li.has-sub:before {
display: block;
position: absolute;
content: '';
height: 0;
width: 0;
border: 3px solid transparent;
border-left-color: #ffffff;
z-index: 2;
top: 15px;
right: 15px;
}
#cssmenu ul li ul li a {
font-size: 18px;
font-weight: 400;
text-transform: none;
color: #000000;
letter-spacing: 0;
display: block;
width: 140px;
padding: 11px 10px 11px 20px;
}
#cssmenu ul li ul li:hover > a,
#cssmenu ul li ul li.active > a {
color: #4cb6ea;
}
#cssmenu ul li ul li:hover:after,
#cssmenu ul li ul li.active:after {
background: #4cb6ea;
}
#cssmenu ul li ul li:hover > ul {
left: 170px;
top: 0;
}
#cssmenu ul li ul li:hover > ul > li {
max-height: 72px;
position: relative;
}
#cssmenu > ul > li {
float: left;
}
#cssmenu > ul > li:after {
content: '';
display: block;
position: absolute;
width: 100%;
height: 0;
top: 0;
z-index: 0;
background: #ffffff;
-webkit-transition: height .2s;
-moz-transition: height .2s;
-ms-transition: height .2s;
-o-transition: height .2s;
transition: height .2s;
}
#cssmenu > ul > li.has-sub > a {
padding-right: 40px;
}
#cssmenu > ul > li.has-sub > a:after {
display: block;
content: '';
background: #ffffff;
height: 12px;
width: 12px;
position: absolute;
border-radius: 13px;
right: 14px;
top: 16px;
}
#cssmenu > ul > li.has-sub > a:before {
display: block;
content: '';
border: 4px solid transparent;
border-top-color: #4cb6ea;
z-index: 2;
height: 0;
width: 0;
position: absolute;
right: 16px;
top: 21px;
}
#cssmenu > ul > li > a {
color: #ffffff;
padding: 15px 20px;
font-weight: 700;
letter-spacing: 1px;
text-transform: uppercase;
font-size: 14px;
z-index: 2;
position: relative;
}
#cssmenu > ul > li:hover:after,
#cssmenu > ul > li.active:after {
height: 100%;
}
#cssmenu > ul > li:hover > a,
#cssmenu > ul > li.active > a {
color: #000000;
}
#cssmenu > ul > li:hover > a:after,
#cssmenu > ul > li.active > a:after {
background: #000000;
}
#cssmenu > ul > li:hover > a:before,
#cssmenu > ul > li.active > a:before {
border-top-color: #ffffff;
}
#cssmenu > ul > li:hover > ul {
left: 0;
}
#cssmenu > ul > li:hover > ul > li {
max-height: 72px;
position: relative;
}
#cssmenu #menu-button {
display: none;
}
#media all and (max-width: 768px), only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1024px), only screen and (min-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (min-resolution: 192dpi) and (max-width: 1024px), only screen and (min-resolution: 2dppx) and (max-width: 1024px) {
#cssmenu > ul {
max-height: 0;
overflow: hidden;
-webkit-transition: max-height 0.35s ease-out;
-moz-transition: max-height 0.35s ease-out;
-ms-transition: max-height 0.35s ease-out;
-o-transition: max-height 0.35s ease-out;
transition: max-height 0.35s ease-out;
}
#cssmenu > ul.open {
max-height: 1000px;
border-top: 1px solid rgba(110, 110, 110, 0.25);
}
#cssmenu ul {
width: 100%;
}
#cssmenu ul > li {
float: none;
}
#cssmenu ul li a {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
padding: 12px 20px;
}
#cssmenu ul > li:after {
display: none;
}
#cssmenu ul li.has-sub > a:after,
#cssmenu ul li.has-sub > a:before,
#cssmenu ul li ul li.has-sub:after,
#cssmenu ul li ul li.has-sub:before {
display: none;
}
#cssmenu ul li ul,
#cssmenu ul li ul li ul,
#cssmenu ul li ul li:hover > ul {
left: 0;
position: relative;
}
#cssmenu ul li ul li,
#cssmenu ul li:hover > ul > li {
max-height: 999px;
position: relative;
background: none;
}
#cssmenu ul li ul li a {
padding: 8px 20px 8px 35px;
color: #ffffff;
width: auto;
}
#cssmenu ul li ul ul li a {
padding: 8px 20px 8px 50px;
}
#cssmenu ul li ul li:hover > a {
color: #000000;
}
#cssmenu #menu-button {
display: block;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
padding: 15px 20px;
text-transform: uppercase;
font-weight: 700;
font-size: 14px;
letter-spacing: 1px;
color: #ffffff;
cursor: pointer;
}
#cssmenu #menu-button:after {
display: block;
content: '';
position: absolute;
height: 3px;
width: 22px;
border-top: 2px solid #ffffff;
border-bottom: 2px solid #ffffff;
right: 20px;
top: 16px;
}
#cssmenu #menu-button:before {
display: block;
content: '';
position: absolute;
height: 3px;
width: 22px;
border-top: 2px solid #ffffff;
right: 20px;
top: 26px;
}
}
/*MAIN CONTENT STYLING*/
#section-wrap {
width:1580px;
height:1200px;
}
#mainimage {
background:#fff;
width:1580px;
height:1000px;
color:#A1A1A1;
}
#brochure {
float:left;
background:#fff;
width:787px;
height:342px;
color:#A1A1A1;
border-top: 4px solid #4cb6ea;
border-right: 3px solid #4cb6ea;
border-bottom: 1px solid #4cb6ea;
}
#testimonals {
float:right;
background:#fff;
width:787px;
height:342px;
color:#A1A1A1;
border-top: 4px solid #4cb6ea;
border-left: 3px solid #4cb6ea;
border-bottom: 1px solid #4cb6ea;
}
What i have done till now
In your #media query, you have the following CSS declaration:
#cssmenu > ul {max-height: 0}
This is the line that's hiding your navigation, your giving it a maximum height of 0px.

CSS dropdown menu element moving to left?

I'm having some troubles with this css menu of mine (I'm pretty new to the whole HTML/CSS thing, and so I pieced together some code from Wordpress and other websites). Everything works fine, except when the following occurs:
I hover over a menu item
The dropdown menu fades in
I move my cursor out of the dropdown menu
It moves to the very left side of the menu element and fades out
I don't understand why it moves to the left and doesn't stay in its intended position, and I need some help getting rid of it.
Here's the CSS code:
#import url(http://fonts.googleapis.com/css?family=Droid+Serif);
#cssmenu {clear: both; padding: 0; display: block; margin: 0; border: 0; float: left; z-index: 99999;}
#cssmenu ul, #cssmenu li {list-style: none; margin: 0; padding-left: 0;}
#cssmenu ul {position: relative; z-index: 99999; }
#cssmenu ul li { float: left; min-height: 1px; vertical-align: middle;}
#cssmenu ul li.hover,
#cssmenu ul li:hover {position: relative; z-index: 99999; cursor: default; opacity: 1;}
#cssmenu ul ul {visibility: hidden; position: absolute; top: 100%; left: 0; z-index: 99999; width: 100%;}
#cssmenu ul ul li {float: none;}
#cssmenu ul ul ul {top: 0; left: auto; right: -99.5%; }
#cssmenu ul ul {bottom: 0; left: 0;}
#cssmenu ul ul {margin-top: 0; }
#cssmenu ul ul li {font-weight: normal;}
#cssmenu a { display: block; line-height: 1em; text-decoration: none; }
#cssmenu {
position: fixed;
top: 0;
left: 180px;
width:100%;
background: #020202;
border-bottom: 4px solid #08c1c3;
font-family: 'Droid Serif', serif;
font-size: 14px;
}
#cssmenu > ul { *display: inline-block; }
#cssmenu:after, #cssmenu ul:after {
content: '';
display: block;
clear: both;
}
#cssmenu a {
display: block;
background: #020202;
color: #CCC;
opacity: 1;
padding: 0 20px;
z-index: 99999;
}
#cssmenu ul ul {
border-top: 4px solid #08c1c3;
text-transform: none;
min-width: 190px;
float: left;
opacity: 0;
position: absolute;
left: 0;
visibility: hidden;
-webkit-transition: visibility 0s 0.4s, opacity 0.4s ease-in;
-moz-transition: visibility 0s 0.4s, opacity 0.4s ease-in;
-o-transition: visibility 0s 0.4s, opacity 0.4s ease-in;
transition: visibility 0s 0.4s, opacity 0.4s ease-in;
z-index: 99999;
}
#cssmenu ul ul a {
background: #020202;
color: #CCC;
border: 1px solid #08c1c3;
border-top: 0 none;
line-height: 1.25;
padding: 16px 20px;
z-index: 99999;
width: 150px;
}
#cssmenu ul li:hover > ul {
display: block;
opacity: 1;
-webkit-transition: opacity 0.4s ease-in;
-moz-transition: opacity 0.4s ease-in;
-o-transition: opacity 0.4s ease-in;
transition: opacity 0.4s ease-in;
visibility: visible;
}
#cssmenu ul ul li {
}
#cssmenu > ul > li > a { line-height: 48px; }
/* #cssmenu ul ul li:first-child > a { border-top: 1px solid #08c1c3; }
#cssmenu ul ul li:hover > a { background: #333; } */
#cssmenu ul ul li:last-child > a {
box-shadow: 0 1px 0 #08c1c3;
}
#cssmenu ul li:hover > a, #cssmenu ul li.active > a {
background: #333;
color: #08c1c3;
opacity: 1;
} /* Top level of menu */
#cssmenu ul li.has-sub > a:after {
content: "\00BB";
float: right;
margin-left: 5px;
}
#cssmenu ul li.last ul {
left: auto;
right: 0;
}
#cssmenu ul li.last ul ul {
left: auto;
right: 99.5%;
}
And here's an example menu:
<div id='cssmenu'>
<ul>
<li class='active'><a href='index.html'>Home</a></li>
<li class='has-sub '><a href='#'>A</a>
<ul>
<li><a href='#'>A-a</a></li>
<li><a href='#'>A-b</a></li>
</ul>
</li>
<li class='has-sub '><a href='#'>B</a>
<ul>
<li><a href='#'>B-a</a></li>
<li><a href='#'>B-b</a></li>
<li><a href='#'>B-c</a></li>
</ul>
</li>
<li><a href='#'>C</a></li>
<li><a href='#'>About</a></li>
</ul>
</div>
You need to set position:relative on the list items for the default state, not for the hover state:
#cssmenu ul li {
position: relative;
}
Otherwise when you hover out the sub-menu is positioned relative to the menu container and not its parent
Updated fiddle