2 Level CSS Drop Down Menu - display: none Does not Work -
i have designed 2-level css drop down menu. works perfect except 1 thing. want when hover on top menu item, 1st level drop down menu appears , when hover on item press in 1st level menu 2nd level menu items appear. problem when hover on top menu sub-menus appear altogether. means display: none
not work. why happen , solution?
html code
<ul id="nav"> <li><a href="/ueber_uns.htm">about us</a> <ul> <li><a href="#">who are</a></li> <li><a href="#">our goals</a></li> <li><a href="#">our team</a></li> <li><a href="#">press</a> <ul> <li><a href="#">2006</a></li> <li><a href="#">2007</a></li> <li><a href="#">2008</a></li> </ul> </li> <li><a href="#">impressum</a></li> </ul> </li> </ul>
css code
ul#nav { margin: 0; padding: 0; list-style: none; text-align: center; /*display: table-cell; vertical-align: middle;*/ } ul#nav li { float: left; position: relative; font-size: 16px; background-color: orange; } ul#nav li li { font-size: 14px; } ul#nav ul { margin: 0; padding: 0; list-style: none; text-align: left; display: none; } ul#nav li:hover ul { display: block; position: absolute; } ul#nav a:link, ul#nav a:visited { display: block; width: 110px; padding: 10px 5px; text-decoration: none; color: #000; } ul#nav ul a:link, ul#nav ul a:visited { width: 135px; } ul#nav a:hover, ul#nav a:active { color: #fff; } ul#nav ul ul { position: absolute; top: 0; left: 100%; display: none; } ul#nav ul li:hover ul { display: block; }
change this
ul#nav li:hover ul { display: block; position: absolute; }
to this
ul#nav li:hover > ul { display: block; position: absolute; }
basically ul#nav li:hover > ul
targets secondary drop-down menu only, when hover on us, second level menu going show up, leaving third 1 hidden.
Comments
Post a Comment