2.CSS特性
css具有两大特性:继承性和层叠性。
1.2.1 继承性
继承性指的是子元素继承了父元素的某些样式属性。例如在父元素中定义了字体颜色之后,子元素会继承父元素的字体颜色。但是并不是所有属性都具有继承性,如padding、margin、border等就不具有继承性。
在css中,具有继承性的属性有3类。
- 文本相关属性:font-family、font-size、font-style、font-weight、font、line-height、text-align、text-indent、word-spacing。
- 列表相关属性:list-style-image、list-style-position、list-style-type、list-style。
- 颜色相关属性:color。
超链接的特殊情况:a元素本身有默认的颜色样式,优先级比继承的颜色要高。如果想要改变a元素的颜色,必须选中a元素进行操作才行。如果想要a元素继承父元素颜色,可以在a元素中使用“color:inherit;”来实现。
1.2.2 层叠性
css的层叠性,指的就是样式的覆盖。对于同一个元素来说,如果我们重复定义多个相同的属性,并且这些样式具有相同的权重时,css会以最后定义的属性值为准,遵循后来者居上的原则。
“后来者居上”需要符合以下3个条件:
- 元素相同
- 属性相同
- 权重相同
权重,指的是选择器的权值。