我想的是:
#list li > a {
font-weight: bold;
}
但是这适用于每个LI锚点我只希望加粗的顶级项目而不是LI的嵌套LI - 如果这有意义吗? :)
编辑|
<ul id="list">
<li><a href="#">A</a>
<ul>
<li><a href="#">B</a>
<ul>
<li><a href="#">C</a></li>
<li><a href="#">D</a></li>
</ul>
</li>
<li><a href="#">E</a></li>
</ul>
</li>
<li><a href="#">F</a></li>
<li><a href="#">G</a></li>
<li><a href="#">H</a></li>
</ul>
答案 0 :(得分:1)
您正在寻找的概念称为伪元素或CSS选择器
first-line
代替first-child
<强> HTML 强>
<html>
<body>
<ul>
<li class="ml"><a href="#">A</a>
<ul>
<li><a href="#">B</a>
<ul>
<li><a href="#">C</a></li>
<li><a href="#">D</a></li>
</ul>
</li>
<li><a href="#">E</a></li>
</ul>
</li>
<li class="ml"><a href="#">F</a></li>
<li class="ml"><a href="#">G</a></li>
<li class="ml" ><a href="#">H</a></li>
</ul>
</body>
</html>
<强> CSS 强>
.ml:first-line
{
font-weight: bold;
}
答案 1 :(得分:1)
我不认为你可以阻止css的级联效果,因此你必须在进行时指定课程。 Fiddle Demo
HTML:
<ul class="first">
<li><a href="#">A</a>
<ul class="innerfirst">
<li><a href="#">B</a>
<ul>
<li><a href="#">C</a></li>
<li><a href="#">D</a></li>
</ul>
</li>
<li><a href="#">E</a></li>
</ul>
</li>
<li><a href="#">F</a></li>
<li><a href="#">G</a></li>
<li><a href="#">H</a></li>
</ul>
CSS:
.first {
font-weight: bold;
}
.innerfirst {
font-weight: normal;
}
答案 2 :(得分:1)
您需要为选择器添加更多特异性:
#list > li > a
这会定位a
的直接后代的任何li
,#list
是[{1}}的直接后代(我假设它是外ul
,甚至虽然在你的例子中没有指明。)
您可以在http://jsbin.com/segig/1/edit?css,output处看到它。
无需额外的标记或规则,这使其成为一个非常干净的解决方案。