这让我发疯:
HTML:
<div><h1>Hello World!</h1></div>
CSS:
*:not(div) h1 { color: #900; }
这不是读到“选择所有h1祖先不是div元素的元素吗?”。因此,“ Hello World!” 不应显示为红色,但仍然是。
对于上述标记,添加子组合器的工作原理是:
*:not(div) > h1 { color: #900; }
但是,h1如果它不是div元素的子元素,则不会影响元素。例如:
<div><article><h1>Hello World!</h1></article></div>
这就是为什么我想将h1元素表示为元素的后代而不是子div元素。任何人?
*,即:not(div),就像您指定.class或#id不指定一样*。