CSS2.1 特殊性、继承、层叠规则

来源:互联网 发布:手机助手网络共享 编辑:程序博客网 时间:2024/06/08 04:21


特殊性(选择器的特殊性):

内联样式特殊性为1000

对于选择器中给定的各个id属性值,为0100

对于选择器中给定的各个类属性值、属性选择或伪类,为0010

对于选择器中给定的元素和伪元素,0001

通配选择器的特殊性为0000

结合符没有特殊性


重要性(!important)

声明的结束符分号之前插入!important。


继承:

样式不仅应用到指定的元素,还会应用到它的后代元素。大多数框模型属性(包括外边框、内边距、背景和边框)都不能继承。继承没有特殊性!


层叠规则:

1、找出所有相关规则,这些规则都包含与一个给定元素匹配的选择器。


2、按显示权重对应到该元素的所有声明排序。标志!important的规则的权重要高于没有!important标志的规则。按来源对应用到给定元素的所有声明排序。共有3种来源:
创作人员、读者和用户代理。正常情况下,创作人员的样式要胜过读者的样式。有!important标志的读者样式要强于所有其他样式,这包括有!important标志的创作人员样式。创作人员样式和读者样式都比用户代理的默认样式要强。


3、按照特殊性对应用到给定元素的所有声明排序。有较高特殊性的元素权重要大于有较低特殊性的元素。


4、按出现顺序对应用到给定元素的所有声明排序。一个声明在样式表或文档中越后出现,他的权重就越大。如果样式表中有导入的样式表,一般认为出现在导入样式表中的声明在前,主样式表中的所有声明在在后。


根据按顺序排序,一般建议按:link :visited :hover :active的顺序声明链接样式。

列如:正在点击的未访问的链接,可匹配的规则有3个 -- :link :hover :active 。按照LVHA的顺序,:active 才能胜出。


摘至  《CSS权威手册》


0 0
原创粉丝点击