精通css书籍第二章笔记后几节

91 阅读2分钟

2.2层叠

原理:为规则赋予不同的重要程度

允许用户使用!important标注来覆盖规则,主要是出于无障碍交互的需要

p{
    font-size:1.5em !important;
    color:#666 !important;
}

层叠机制的重要性由高到低:

~标注为!important的用户样式

~标注为!important的作者样式

~作者样式

~用户样式

~浏览器(或用户代理)的默认格式

在此基础上,规则再按选择符的特殊性排序。特殊性高的选择符会覆盖特殊性低的选择符。如果两条规则的特殊性相等,则后定义的规则优先。

2.3特殊性

每种选择符都对应着一个数值。

如果某条规则中用到的选择符不足10个,用十进制计算其特殊性,四个级别a,b,c,d

~行内格式,a为1

~b等于ID选择符的数目

~c等于类(class)选择符、伪类选择符及属性选择符的数目

~d等于类型(type)选择符和伪元素选择符的数目

166.jpg

*)的特殊性为0。如果两条规则的特殊性相等,就必须考虑规则再样式中的位置,以及选择符的次序。

为了使代码不因为特殊性而复杂化,更好的做法是从一开始就简化选择符,降低特殊性。

intro-highlighted<p class-"intro" intro-highlighted>这种标签中使用,会避免很多不必要的覆盖麻烦。

2.4继承

定义:有些属性,像颜色或字体大小,会被应用他们的元素的后代所继承

如果要设置的属性是一个可继承属性,那么应该考虑是否直接设置到父元素上。

通用选择符的特殊性为0,但仍然优先于继承的属性。

合理利用继承有助于减少选择符的数量

2.5为文档应用样式

(1).可以把样式放在style元素中,直接放在文档的head部分。

(2)link元素外链<link href="base.css" rel="stylesheet">

(2)@import外链<style>@import url("base.css");</style>

(4)推荐link方法

(5)层叠机制的原理是次序决定优先级:如果为某个元素应用样式时,有两个或更多特殊性相等的规则相互竞争,则后声明的样式胜出

(6)度量Web性能的一个重要指标就是网页内容实际显示在屏幕上需要多久。这个指标有时候也叫“渲染时间”或“上屏时间”

(7)提高性能:1.减少HTTP请求2.压缩和缓存内容3.不让浏览器渲染阻塞JavaScript