【发布时间】:2013-05-12 09:18:07
【问题描述】:
我想为文档中的所有内容设置如下样式:
body * { color:#000; }
但我想从某个 div 及其包含的所有内容中排除样式,所以我尝试了这样的 not 选择器:
body *:not(.thisdiv *) { color:#000; }
好像不行,我还能试试什么?
【问题讨论】:
标签: html css children siblings
我想为文档中的所有内容设置如下样式:
body * { color:#000; }
但我想从某个 div 及其包含的所有内容中排除样式,所以我尝试了这样的 not 选择器:
body *:not(.thisdiv *) { color:#000; }
好像不行,我还能试试什么?
【问题讨论】:
标签: html css children siblings
在您给定的示例中,没有问题。由于特殊性,body 上设置的任何样式都不应覆盖.thisdiv 上的可比较样式。
【讨论】:
运行一些测试,我发现:not 似乎不适用于body 元素,除非我遗漏了什么。
你可以让它更简单,所以像这样:
div:not(.thisdiv) {color: #000;}
但这与您所拥有的并不完全相同。当然,您可以使用以下代码覆盖任何主体颜色:
.thisdiv {color: #222}
无论如何浏览器都更好地支持它并且非常标准。
【讨论】: