当同一个元素设置了不同的样式时,浏览器会根据哪一个样式对元素进行渲染呢?
以下是选择器的优先值,浏览器根据选择器的优先值决定选择哪个样式:
- 选择器都有一个权值,权值越大越优先;
- 当权值相等时,后出现的样式表设置要优于先出现的样式表设置;
- 创作者的规则高于浏览者:即网页编写者设置的CSS 样式的优先权高于浏览器所设置的样式;
- 继承的CSS 样式不如后来指定的CSS 样式;
- 在同一组属性设置中标有“!important”规则的优先级最大;
示例如下:
- 行间样式,加1,0,0,0.
- ID选择器的特殊性值,加0,1,0,0。
- 类选择器、属性选择器或伪类,加0,0,1,0。
- 元素和伪元素,加0,0,0,1。
- 通配选择器*对特殊性没有贡献,即0,0,0,0。
- !important(权重),但它的优先级是最高的,可以认为它的特殊性值为1,0,0,0,0。