:not() 伪类
#css
#选择器
使用 :not() 伪类需要注意技巧,稍有不慎结果可能不符合预期。
场景:为内联代码 code 设置样式,但需排除其父元素是 pre 或 .code-block 的情况。
错误
:not(pre), :not(.code-block) {
> code {
background-color: 'red';
}
}
正确
:not(pre, .code-block) {
> code {
background-color: 'red';
}
}
错误解读:这种写法实际会匹配 父元素不是 pre 的所有元素 或 父元素不是 .code-block 的所有元素,导致选择范围过大(逻辑上是"或"关系而非"且")。