![](/img/trans.png)
[英]Tried to make a pure css dropdown menu - the submenus are not below the main nodes
[英]Create a Pure CSS Dropdown Menu - Children nodes don't appear
我一直在自学CSS,并尝试创建一个下拉菜单。
我正在关注此页面和其他教程,但是我的编码中的子节点(子列表)不会出现。
HTML和CSS如下所示。
<body>
<div id="menu">
<ul>
<!-- 1st level -->
<h2><li><a>Header</a></li></h2>
<li><b href="#">Home</b></li>
<li>
<b href="#">Patterns</b>
<ul>
<!-- 2nd level-->
<li><b href ="#">Event</b></li>
<li><b href ="#">Case</b></li>
</ul>
</li>
<!-- other menus -->
</ul>
</div> <!-- end menu -->
</body>
CSS
menu { float: left; } #menu ul li { list-style-type: block; display: inline; } #menu li a { <!-- omit --> } #menu li b { <!-- omit --> } #menu ul li :hover { background: #555; } #menu ul li ul { display: none; } #menu ul li :hover > ul { display: block; }
至少我明白, #menu ul li ul
, display
必须是none
,但我无能,如何展现它的时候我将鼠标悬停它。 如果您能提供任何建议,我将不胜感激。
正确的HTML :(这次没有b
标签)
<div id="menu">
<ul>
<!-- 1st level -->
<h2><li><a>Header</a></li></h2>
<li><a href="#">Home</a></li>
<li>
<a href="#">Patterns</a>
<ul>
<!-- 2nd level-->
<li><a href ="#">Event</a></li>
<li><a href ="#">Case</a></li>
</ul>
</li>
<!-- other menus -->
</ul>
</div> <!-- end menu -->
和CSS:
#menu {
float: left;
}
#menu ul li {
list-style-type: block;
display: inline;
}
#menu ul li:hover {
background: #555;
}
#menu ul li ul {
display: none;
}
#menu ul li:hover > ul {
display: block;
}
基本上最大的问题是选择器和:hover伪类之间的空间 。 演示: http : //jsfiddle.net/LL34k5ku/4/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.