CSS 优先级算法如何计算?,前端面试复习
CSS 优先级是由四个级别组成:
- 内联样式(Inline style)- 优先级最高,为 1000。
- ID 选择器(ID selectors)- 优先级为 0100。
- 类选择器(Class selectors)、属性选择器(Attribute selectors)和伪类(Pseudo-classes)- 优先级为 0010。
- 元素选择器(Type selectors)和伪元素(Pseudo-elements)- 优先级为 0001。
优先级计算时,将这四个级别的数值依次相加,然后比较数值大小。如果两个规则的优先级数值相同,则后定义的规则将会被应用。
例如,考虑以下两个选择器:
#myId .myClass > p { color: red; } /* 优先级 = 0100 + 0010 + 0001 = 1110 */
p#myId > .myClass { color: blue; } /* 优先级 = 0001 + 0100 + 0010 = 1100 */
根据优先级算法,p#myId > .myClass
的规则将会被应用,因为它的优先级更高(1100 > 1110)。
注意:继承的样式不参与优先级计算,并且被认为具有最低的优先级。
评论已关闭