Val*_*ier 11 css safari firefox google-chrome css-selectors
我很难弄清楚为什么下面的代码在Safari中呈现蓝色,但在Chrome和Firefox中呈现红色.
em:not(div) {
color: red
}
em:not(p div) {
color: blue
}Run Code Online (Sandbox Code Playgroud)
<p>
<em>FOO</em>
</p>Run Code Online (Sandbox Code Playgroud)
https://jsfiddle.net/hzcLpf9L/
显然,Chrome和Firefox似乎不支持:not()其中包含多个级别的CSS选择器.(可能的错误?)
我非常喜欢:not()选择器,我使用Safari开发,因此当我在Chrome上发现我的网站时,我几乎心脏病发作.任何解释为什么这种奇怪的行为发生将受到高度赞赏.
Bol*_*ock 13
Safari最近发布了4级版本:not(),它允许复杂的参数选择器,使其与jQuery迄今为止的非标准实现相提并论.请参阅发行说明.在目前的化身:not()只允许一个参数一个简单的选择,这样一个复杂的选择一样p div不会被设计在当今的浏览器.
复合选择器是由一个或多个化合物选择器组成的表达式,这些化合物选择器由组合子(如后代>,~和)分隔+.复合选择器是一个或多个简单选择器的序列.div是一个复合选择器,由一个简单的选择器组成,p div是一个复杂的选择器,由两个复合选择器组成(每个复合选择器由一个简单的选择器组成),由一个后代组合器分隔.
目前尚不清楚它何时会出现在其他浏览器中,尽管此时新规范不太可能:not()发生变化 - 当前的4级定义是不费脑子的,如果原始WebKit应变大胆实现它,然后它进入其他应变(包括Blink)之前只是时间问题.
经过FPWD近五年的艰苦等待,我们实际上可能很快就会看到一个CR选择器4.考虑我抽水.
| 归档时间: |
|
| 查看次数: |
3014 次 |
| 最近记录: |