假设我有以下标记: -
<div class="house">
<p>...</p>
<div class="room">
<p>...</p>
</div>
</div>
<div class="house">
<p>...</p>
<div class="room porch">
<p>...</p>
</p>
</div>
CSS: -
.house .room { /* Some styling done here */ }
.porch { /* Some different styling done here */ }
现在,我希望我的div room
和porch
只考虑班级porch
并忽略house
和{{1}的样式}。这可能吗?这只是一个简单的例子,我有一个案例代替类room
,还有更多的类,所以只覆盖一个porch
的类是行不通的,因为可能有一个很多具有各种风格的课程。
如何实现这一目标?
答案 0 :(得分:5)
您可以使用:not
.house .room:not(.porch) {
/* .room elements only when they have not .porch class */
}
.porch {
/* all .porch elements */
}
答案 1 :(得分:1)
选择器对所选样式规则有效。
所以制作这个选择器。
. house .room.porch