跳至主要內容

2. CSS 三大特性

前端CSSCSSwebCSS三大特性大约 2 分钟

CSS 三大特性

一、层叠性

相同选择器给设置相同的样式,此时一个样式就会覆盖另一个冲突样式: 原则:样式冲突-遵循的原则是就近原则,哪个样式理结构近,就执行哪个样式; 样式不冲突-不会层叠。

二、继承性

子标签会继承父标签的某些样式,如文本颜色,字号。

行高继承性:body { font:12px/1.5 Microsoft yahei;} 行高可以有单位也可以无单位。这个 1.5 代表的是当前元素文字大小的 1.5 倍。所以当前行高为21px. 如果子元素没有设置行高,则会继承父元素的行高 1.5 倍。 此时子元素的行高是当前子元素的文字大小的 1.5 倍。

三、优先级

给同一个元素指定多个选择器,就会产生优先级。

如果选择器相同,则执行层叠性; 如果选择器不相同,则执行选择器权重。

  • 选择器 选择器权重
  • 继承或者* (0,0,0,0)
  • 元素选择器 (0,0,0,1)
  • 类选择器,伪类选择器 (0,0,1,0)
  • ID 选择器 (0,1,0,0)
  • 行内样式 style="" (1,0,0,0)
  • !important (无穷大)

注意: (1)权重是有 4 组数字组成的,但是不会有进位; (2)类选择器永远大于元素选择器,id 选择器永远大于类选择器。 (3)继承权重为 0,如果该元素没有直接选中,不管父元素权重多高,子元素得到的权重都是 0.

权重的叠加:

复合选择器会有权重叠加的问题