CSS选择器将样式应用于除第一个之外的所有图像

Spa*_*awk 9 css css-selectors

我认为我可以使用高级CSS选择器来做到这一点,但是很挣扎.

在这里有一个JS小提琴,下面的例子

基本上,我如何定位每个图像,除了第一个?我不想使用类或ID,我只想使用高级选择器,如果可能的话.

所以类似于.entry-content img:first-child(虽然我知道这不起作用)

<div class='entry-content'>
    <div>
        <img src='http://placedog.com/400/300'/>
    </div>
    <div>
        <img src='http://placedog.com/400/300'/>
    </div>        
     <div>
        <img src='http://placedog.com/400/300'/>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

Mic*_*ael 16

如果要选择除第一个之外的所有img标记,请使用:not子类:

.entry-content div:not(:first-child) img
Run Code Online (Sandbox Code Playgroud)


工作示例:http : //jsfiddle.net/GrAaA/


浏览器支持:
:not http://caniuse.com/#search=%3Anot
:first-child http://caniuse.com/#search=%3Afirst-child


Bol*_*ock 6

你需要排除图像中的第一个div孩子,而不仅仅是第一个img孩子,因为每一个img是它的第一个和唯一的孩子div,而div元素本身是兄弟姐妹.

为此,您可以使用此选择器:

.entry-content div + div img
Run Code Online (Sandbox Code Playgroud)

这将选择每个div直接接下来的图像div,因此您的第一个图像将不匹配.

如果你有兄弟姐妹div,.entry-content你可能需要使用一般的兄弟选择器:

.entry-content div ~ div img
Run Code Online (Sandbox Code Playgroud)