Css 仅选择不带';没有已定义类的父级

Css 仅选择不带';没有已定义类的父级,css,css-selectors,Css,Css Selectors,如何仅选择父树中没有特定类的父级的子级 这不起作用: div:not(.dontSelect) .child div{ 背景色:红色; 填充物:5px; } div:not(.dontSelect).child{ 背景颜色:绿色; 填充物:5px; } 选择这个 不要选择此选项 我认为您不能将组合选择器与:not一起使用: 此选择器仅适用于一个元素;你不能用它来 排除所有祖先。例如,body:not(表)a仍将 应用于表内的链接,因为将与 :not()选择器的一部分 您可以尝试以下方法:

如何仅选择父树中没有特定类的父级的子级

这不起作用:

div:not(.dontSelect) .child
div{
背景色:红色;
填充物:5px;
}
div:not(.dontSelect).child{
背景颜色:绿色;
填充物:5px;
}

选择这个
不要选择此选项

我认为您不能将组合选择器与
:not
一起使用:

此选择器仅适用于一个元素;你不能用它来 排除所有祖先。例如,
body:not(表)a
仍将 应用于表内的链接,因为
将与
:not()
选择器的一部分

您可以尝试以下方法:

div{
背景色:红色;
填充物:5px;
}
.孩子{
背景颜色:绿色;
填充物:5px;
}
.别选了,孩子{
背景色:首字母;
}

选择这个
不要选择此选项

如果您可以将
id
用于main
div

div#内容{
背景色:红色;
填充物:5px;
}
div#content>div:not(.dontSelect).child{
背景颜色:绿色;
填充物:5px;
}

选择这个
不要选择此选项

所以您希望
子元素
的样式为绿色
背景
?@patrickmdermott是的,但只有第一个,因为另一个元素有一个我不喜欢的父元素;)谢谢你的回答,你能解释一下,为什么不能使用()吗?不幸的是它不受支持。你可以在这里读到更多:我明白了,他们完全否认了我试图做的事情,我把它添加到了你的回答中。