注:以下内容均参考 CSS 2.1,和 CSS 2.0 略有差异。
之前就知道这个编辑规则,但是一直不清楚具体的原因。今天看了CSS权威指南,才有了更多的了解。
通配符的优先级是很低的为0,0,0,0,几乎所有规则--内联样式(1,0,0,0)、id选择器(0,1,0,0),元素选择器选择器(0,0,0,1)的特殊性都比它要高,但我们忘记了继承属性,继续属性是没有特殊性的,会被通配符覆盖掉。
比如我们希望一个div里面所有的文字颜色均为红色,写法如下
css html 效果但如果,我们在样式表中使用通配符对字体颜色进行了设置,那么会覆盖掉继承的样式。
css 效果这显然不是我们想要的,但大部分情况下,我们会使用通配符,去清除一些元素默认的内、外边距,而这两个属性是不会被继承的,所以影响还比较小,但也还是少用为好。
总结:不要使用通配符去设置一些可被继承的css样式
网友评论