0

如果我有这个清单

<ul class="parent">
    <li class="child">li1</li>
    <li>li2</li>
    <li>li3</li>
</ul>

现在如果我申请

.parent li {
    background-color: blue;
}
.child {
    background-color: red;
}

然后红色背景被忽略。不想让它变得重要,但要理解为什么类不起作用。如果我将这些选择器更改为ul li& .child,或将它们扩展为.parent li& .parent .child,则背景适用。所以也许很简单的问题:有什么规则,为什么这个选择器必须用“完整路径”定义?为什么仅使用类名直接定义时它不起作用?

4

1 回答 1

4

答案在于CSS 选择器的特殊性。短版:最具体的选择器获胜。

于 2012-07-27T00:08:37.797 回答