css中哪些属性可以继承?
这是前两天突然想到的一个问题,经常看见有的css样式中会出现XXX:
inherit
;自己模仿的时候也就跟着写了,但却不知道它的原理是什么。当然,留心的话多写几次也能总结出来,比如经常看见文本相关的会写inherit,表格类会写inherit,但不总结的话,知识就不会形成经证实的认知,不会完全吸收为自己的东西,所以还是查找了资料记录下来。 css中默认会继承的属性在上面已经提到了,一是
文本相关的属性
,具体有:
font-family, font-size, font-style,font-variant, font-weight, font, letter-spacing,line-height,text-align, text-indent, text-transform,word-spacing
二是
列表相关的属性
,具体如下:
list-style-image, list-style-position,list-style-type, list-style
还有一个属性比较重要的是
color
属性。
查找资料过程中发现另外一个小知识点,虽然之前也看到过,但那时候没有完全理解,也没有记录,以至于再次看到时竟感觉完全没接触过,这次理解了也记录下来。那就是css中样式的特性值,它代表了不同样式的权重,权重大的样式优先。比如一个元素同时具有几个类或id,并且样式之间具有冲突,则权重大的样式会覆盖权重小的样式。
<div class="classname" id="idname"></div> <style> .classname{ color:red; } #idname{ color:blue; } </style> 则这个div的文本颜色为为蓝色。因为id的权重比class大。那么权重的具体计算规则是怎样的呢?如下所示:- h1 {color:blue;} 特性值为:1
- p em{color:purple;} 特性值为:1+1=2
- .apple {red;} 特性值为:10
- p.bright {color:yellow;} 特性值为:10+1=11
- p.bright em.dark {color:brown;} 特性值为:10+1+10+1=22
- #idname {color:yellow} 特性值为:100
文章解释的不错,转载过来,转载地址:
http://www.cnblogs.com/HUSTecho/archive/2013/03/26/3199538.html