选择所有img,除了CSS中具有特定类的那些

时间:2011-10-15 08:10:58

标签: css css-selectors

如何在不使用:not选择器或覆盖?

的情况下执行标题

PS。我也很好奇如何使用:not选择器执行此操作。我尝试了这个但是没有用:

#div1 #div2 img:not[.c1]{ ... }

3 个答案:

答案 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;

}

jsfiddle