我有课程" item"出现在整个页面中。整个页面的样式是相同的。但是,当它出现在具有类" group"的元素中时,我不希望应用样式。我真的很喜欢使用:not pseudo selector,所以我不必为这种特殊情况创建另一种风格。
CSS
.item, .group div:not(.item){
color:red;
}
HTML
<div class="item">I have style!</div>
<div class="group">
<div class="item">No style for me, thanks!</div>
</div>
答案 0 :(得分:1)
您可以使用initial值并按以下方式执行操作:
.item {
color:red;
}
.group div.item {
color:initial;
}
&#13;
<div class="item">I have style!</div>
<div class="group">
<div class="item">No style for me, thanks!</div>
</div>
&#13;
答案 1 :(得分:1)
这不是一个完美的解决方案,但您可以定位.group
div并说出类似的内容:
div:not(.group) .item {
color: red;
}
这是一个小提琴:http://jsfiddle.net/jqxgetsj/
唯一的限制是你必须有直接的父选择器或者更具针对性的东西。
答案 2 :(得分:0)
CSS中没有父选择器,因此您无法进入内部。虽然有一个子选择器,但在你的例子中可以很好地使用它:
body > .item {
color:red;
}
&#13;
<div class="item">I have style!</div>
<div class="group">
<div class="item">No style for me, thanks!</div>
</div>
&#13;