IE里关于CSS的优先级的bug(二)

IE里面关于CSS优先级的bug其实挺多,所以这里还得来个第二篇。可预见的还有个第三篇,大家耐心。

这次讲的是有关链接伪元素的。CSS2.1规范里有明确的提到,类名和伪元素的个数是合并在一起计算的。换句话说,:hover的优先级,应该和如.highlight一样高。但是在IE 6里并不是这样的哦。看下面两个定义

a:hover{ /* 优先级 [0,1,1] */

    color: red;

}

div.green_link a { /* 优先级 [0,1,2] */

    color: green;

}

OK,注释里我已经写清楚了,“div.green_link a”的优先级比较高。但是请在IE 6里看下面的代码:


提示:您可以修改代码之后再运行

大家会发现,在IE6里面,a:hover的优先级比div.greenLink a高。并且,同样的结论在:visited和:active里面也有,但是:link却没有这个问题。另外,IE7和IE8beta1没有这个问题。

你可能感兴趣的:(css)