请检查以下代码。第一种样式完全适用,但第二种样式不适用于“常规1”样式。我必须在“常规”类的第一个元素上应用蓝色。
.plan-list .basic:first-child {
background: red;
}
.plan-list .regular:first-child {
background: blue;
}
<ul class="plan-list">
<li class="plan basic">basic 1</li>
<li class="plan regular">regular 1</li>
<li class="plan regular">regular 2</li>
<li class="plan basic">basic 2</li>
</ul>
答案 0 :(得分:0)
应该是
<style>
.plan-list .basic:first-child {
background: red;
}
.plan-list .regular:nth-child(2) {
background: blue;
}
</style>
<ul class="plan-list">
<li class="plan basic">basic 1</li>
<li class="plan regular">regular 1</li>
<li class="plan regular">regular 2</li>
<li class="plan basic">basic 2</li>
</ul>
这是因为,虽然这个li是第一个拥有该类的孩子, 实际上是其父母中的第二个孩子
答案 1 :(得分:0)
设置first-child
时,从字面上看,它必须是其first child
的{{1}}。
因此,您正在尝试选择类别为parent
AND 的元素,该元素是其regular
的{{1}}。
答案 2 :(得分:0)
只需添加来自MDN文档的其他答案即可: :first-child CSS伪类表示一组同级元素中的第一个元素。