CSS特异性和CSS继承(具体问题)?

时间:2010-04-16 11:40:46

标签: css

我要感谢CSS规范的官方链接(和部分),它解释了:

.one two h1 {color:green;font-family:arial;}  /*case 1 */
.one two h1 {color:blue;}   /*case 2*/

将导致(在浏览器评估时)

.one two h1 {color:blue;font-family:arial;}  /*case 3*/

或将是:

.one two h1 {color:blue;}  /*case 4*/

==>我已经阅读了很多关于继承,特殊性,级联等的内容,但我仍然没有找到给定的例子,这里适用哪些规则。

关于特定性,两个元素在特定方面是相同的:但是case2将“赢”,因为它等于特定但最后(!!)一个声明(=最具体)。 但是,特性始终适用于定义了所有属性的整个选择器。或者仅限于“竞争”中的属性(并在两者中声明)。

感谢!!!!

2 个答案:

答案 0 :(得分:1)

它将是:

.one two h1 {color:blue;font-family:arial;}  /*case 3*/

后面的规则会逐个覆盖以前的CSS属性。

答案 1 :(得分:1)

这将是.one two h1 {color:blue;font-family:arial;} /*case 3*/

http://www.w3.org/TR/CSS2/cascade.html#cascading-order

“最后,按指定顺序排序:如果两个声明具有相同的权重,原点和特异性,则后者指定获胜。导入样式表中的声明被认为是在样式表本身中的任何声明之前。”