如何在不使用:not
选择器或覆盖?
PS。我也很好奇如何使用:not
选择器执行此操作。我尝试了这个但是没有用:
#div1 #div2 img:not[.c1]{ ... }
答案 0 :(得分:3)
只有现代浏览器(Firefox,Safari和Opera)支持:not()选择器:not(IE)。
img:not(.myimage) {…}
这将选择所有没有.myimage类的图像元素
希望这有帮助。
答案 1 :(得分:2)
如果您不想使用:not
,您应该可以使用:
#div1 #div2 img { /* things that apply to :not(.c1) */ }
#div1 #div2 img.c1 { /* adjustments for .c1 */ }
:not
的语法略有不同。来自fine manual:
否定伪类
:not(X)
是一个功能符号,它将一个简单的选择器(不包括否定伪类本身)作为参数。它表示一个未被其参数表示的元素。
类选择器是simple selector所以这应该有效:
#div1 #div2 img:not(.c1) { ... }
答案 2 :(得分:1)
它适用于()而不是[]。检查此示例:
<div id="1d" class="blue"></div>
<div id="2d" class="blue"></div>
<p id="3d" class="blue"></p>
和css
.blue:not(p) {
width: 100px;
height: 100px;
background-color: blue;
margin: 5px;
}