CSS3:not()选择器
在以下情况下,如何使用CSS3:not()选择器,css,css-selectors,Css,Css Selectors,在以下情况下,如何使用:not()将div.note em排除为粗体 div#内容em{ 字体大小:粗体; } /*我想删除以下内容 赞成:not选择器应用于上述*/ div#内容div.note em{ 字体大小:正常; } PS:这是一个简单的例子,实际上我在div#content em中有许多样式,我想应用于除div以外的所有样式。这就是为什么我不想在以后手动覆盖它们的原因…如果您知道#content和之间的确切层次结构。注意,您可以使用子选择器使否定足够具体,以便工作。如果.note是
:not()
将div.note em
排除为粗体
div#内容em{
字体大小:粗体;
}
/*我想删除以下内容
赞成:not选择器应用于上述*/
div#内容div.note em{
字体大小:正常;
}
PS:这是一个简单的例子,实际上我在
div#content em
中有许多样式,我想应用于除div以外的所有样式。这就是为什么我不想在以后手动覆盖它们的原因…如果您知道#content
和之间的确切层次结构。注意
,您可以使用子选择器使否定足够具体,以便工作。如果.note
是#content
的子级,则使用:
#content>:不(.note)em,#content>em{}
如果在#content
和之间有两个
。注意
,请执行以下操作:
#content>div>div>:不(.note)em,#content>em{}
不过,您最好使用现有的,只覆盖作为的后代的em元素。注意。由于后代组合子的性质,您无法单独使用:not()
可靠地完成此操作。你必须创建某种复杂的选择器,这取决于你的HTML结构,这样做的努力不值得仅仅使用div#content div.note em
覆盖规则。(我不知道这样的选择器是否可行。它真的取决于你的标记。)嗯,标记与CSS建议的非常相似。。。想象一下div#content
就像article
,然后div.note
成为该文章中突出显示的信息框,除了p
s、blockquote
s、图像等所有其他内容之外,您确实不需要使用标记限定id和类选择器,除非添加标记会更改选择器(即,您有#content或.note元素不是div)。