css(层叠样式cascade)——学习笔记
层叠式样式表中的“cascade” 是什么?P475
层叠就是浏览器决定采用哪种样式的方法。
一:现在扮演浏览器。假设网页中有一个<h1>元素, 你想知道它的font-size属性。可以这么做:
1: 把所有的样式表集中起来。
2: 找到所有匹配的声明。
3: 将所有匹配结果分类。
4: 根据声明的具体程度排序。(一条规则越能准确地选择一个元素,就知道它越具体)例如: 子孙选择符“blockquote h1” 要比“h1”选择符具体,因为它只选择<blockquote >中的<h1>
5: 最后。将所有冲突规则按照它们在各自样式表中出现的顺序排列。
列表中的冲突规则排列的依据是,在它们各自样式表中后出现的(更接近末尾) 规则更重要些。也就是说,在样式表中添加一 条有关某个元素的新规则,它会覆盖前面所有的同属性规则。
二: 如果找不到包含属性值的属性声明
1: 如果在层叠的规则中没有找到匹配的属性,承就要用继。不是所有的属性都能通过继承得到。如(边框属性) 对于继承的属性(比如color,font-family,line-height等)
2:办法就是
求助于浏览器样式表中的默认值,所有浏览器对每个元素都有默认样式