的代码是这样的,为什么省略这个“li”CSS选择器会影响应用的样式?
<style type="text/css">
#nav, .nav, #nav .nav li { margin:0px; padding:0px; }
#nav li {float:left; display:inline; cursor:pointer; list-style:none; padding:0px 10px 0px 10px; border:1px #000 solid;
position:relative;}
li, li a {color:#000; text-decoration:none;}
#nav .nav li { width:100%; text-indent:10px; line-height:30px; margin-right:10px; border-top:1px #000 solid;
border-bottom:1px #000 solid; border-left:none; border-right:none; background:#fff;}
#nav li a {display:block; width:inherit; height:inherit;}
ul.nav { display:none; }
#nav li:hover > a, #nav li:hover { color:#fff; background:#000; }
#nav li ul.first {left:-1px; top:100%;}
li:hover > .nav { display:block; position:absolute; width:200px; top:-2px; left:50%; z-index:1000; border:1px #000 solid; }
li:hover { position:relative; z-index:2000; }
</style>
</head>
<body>
<ul id="nav">
<li>Menu 1
<ul class="nav first">
<li><a href="#">Menu 1</a></li>
<li>Menu 2</li>
<li>Menu 3</li>
<li>Menu 4</li>
</ul>
</li>
<li>Menu 2</li>
<li>Menu 3</li>
<li>Menu 4</li>
</ul>
</body>
在第三个元素在"li, li a"
部分,如果我删除"li"
选择只留下"li a"
,会发生什么,当我徘徊在我的第一级列表项中,第二个列表项出现,但文本没有,我不知道它是背景影响还是文本影响,因为我找不到影响我的第二级列表的东西!
哦,顺便说一句,名为“菜单1”的第一级菜单下的第一个菜单是可见的,我认为它是因为“li a”选择器,但对于我删除的部分,我不知道它是如何工作的,当我删除它时,有人能告诉我是什么原因造成了这种麻烦吗?
这是一个很好的解释,但不完全是我的问题,但谢谢你的贡献。 – 2013-03-07 18:44:16