简单来说:所谓CSS优先级,即是指CSS样式在浏览器中被解析的先后顺序。
优先级仅由选择器的匹配规则来决定,优先级顺序
下列是一份优先级逐级增加的选择器列表:
通用选择器(*)
元素(类型)选择器
类选择器
属性选择器
伪类
ID 选择器
内联样式
!important 规则例外
当 !important
规则被应用在一个样式声明中时,该样式声明会覆盖CSS中任何其他的声明, 无论它处在声明列表中的哪里. 尽管如此, !important
规则还是与优先级毫无关系。
使用 !important
不是一个好习惯,因为它改变了你样式表本来的级联规则,从而使其难以调试。
一些经验法则:
Always 要优化考虑使用样式规则的优先级来解决问题而不是
!important
Only 只在需要覆盖全站或外部 css(例如引用的 ExtJs 或者 YUI )的特定页面中使用
!important
Never 永远不要在全站范围的 css 上使用
!important
Never 永远不要在你的插件中使用
!important
权重计算:
解释:
1. 内联样式表的权值最高 1000;
2. ID 选择器的权值为 100
3. Class 类选择器的权值为 10
4. HTML 标签选择器的权值为 1
CSS 优先级法则:
选择器都有一个权值,权值越大越优先;
当权值相等时,后出现的样式表设置要优于先出现的样式表设置;
创作者的规则高于浏览者:即网页编写者设置的CSS 样式的优先权高于浏览器所设置的样式;
继承的CSS 样式不如后来指定的CSS 样式;
在同一组属性设置中标有“!important”规则的优先级最大;
更多前端开发知识,请查阅 HTML中文网 !!
以上就是什么是css优先级?的详细内容,更多请关注0133技术站其它相关文章!