我有<div id='mydiv'>
,我需要选择pre
子项的所有div
和#mydiv
元素。
我可以这样做:
div#mydiv > pre, div#mydiv > div
但是,是否可以这样做#mydiv
仅被引用一次?
div#mydiv > pre, div
将选择页面上的所有div
,无论他们是#mydiv
的孩子,因此逗号不是一种方法。也许还有另一种我不知道的语法?
答案 0 :(得分:37)
您必须两次引用#mydiv
...
#mydiv > pre, #mydiv > div
我删除了无关的div
元素选择器,因为ID足够具体。
答案 1 :(得分:8)
答案 2 :(得分:5)
仅引用id一次的唯一方法是将其与*
选择器一起使用:
#mydiv > * {
将适用于所有元素,即该div的子元素。
根据您计划应用的样式,这可能是可行的(我通常使用它来将边距,填充和边框样式清零),但它仍然可能是第一种方式,因为它使得更容易制作之后的例外/变化。
答案 3 :(得分:1)
您实际上可以使用 :is()
对选择器进行分组。
所以在你的情况下,你会像这样使用它:
div#mydiv > :is(pre, div) {
// CSS
}