CSS img不是的直接子代

Ale*_*ito 3 css css-selectors

我想选择一个标签的img子级,#boardMostra而不是直接子级a

我尝试了这个:

#boardMostra img :not(a img:first-child){
  ...
}
Run Code Online (Sandbox Code Playgroud)

但这是行不通的。

Far*_* YZ 5

您可以使用的唯一CSS方法是在上设置属性#boardMostra img并将其中和#boardMostra a > img

一个例子

<div>
    <img src="#" alt="#">
    <a href="#"><img src="#" alt="#"></a>
</div>

div img { margin: 10px 20px; }
div a > img { margin: 0; }
Run Code Online (Sandbox Code Playgroud)

说明

为什么您的示例代码不起作用:

CSS中的:not(X)属性是一个否定伪类,它接受一个简单的selector1作为参数。本质上,只是任何一种选择器。

:not匹配不由参数表示的元素。传递的参数不能包含附加选择器或任何伪元素选择器。

资料来源:https : //css-tricks.com/almanac/selectors/n/not/