我正在尝试将样式仅应用于元素的第一个子元素。我在css中使用 :first-child 来实现这一点,但看起来这不是我正在寻找的行为。
以以下标记为例:
<ul class="myUl">
<ul class="mySubUl">
<li>foo0</li>
<li>foo1</li>
</ul>
<ul class="mySubUl">
<li>foo2</li>
<li>foo3</li>
</ul>
</ul>
======================
<ul class="myUl">
<li>foo0</li>
<li>foo1</li>
<ul class="mySubUl">
<li>foo2</li>
<li>foo3</li>
</ul>
</ul>
这个简单的CSS:
ul.myUl li:first-child {
color: red;
}
现场小提琴:http: //jsfiddle.net/bsSDh/1/
这不仅适用于ul.myUl
元素的第一个孩子,也适用于ul.subUl
. 如果 CSS 选择器是(有效),我会预料到这种行为ul li:first-child
,但由于我向选择器添加了一个类,我希望只将该样式应用于第一个孩子。
为什么这种风格不仅适用于第一个孩子?我是否遗漏了有关first-child
规格的某些内容或以错误的方式使用选择器?