CSS继承性之深入剖析(2)_CSS教程
教程Tag:暂无Tag,欢迎添加,赚取U币!
在CSS中,继续是一种非常自然的行为,我们甚至不需要考虑是否能够这样去做,但是继续也有其局限性。
首先,有些属性是不能继续的。这没有任何原因,只是因为它就是这么设置的,标准就是如此。举个例子来说:border属性,大家都明白border属性的作用是设置元素的边框的,它就没有继续性。假如继续了边框属性,那么文档看起来就会很希奇。例如我们定义容器div的边框为1px,而在此容器内的ul li在正常情况下我们都不希望它有边框,假如border有继续性,我们就要再去掉它们的边框。这样显然是不合理的。
多数边框类的属性,如:Border(边框)、Padding(补白)、Margin(边界)、背景等等,都是没有继续性的。
在某些时候继续也会带来一些错误,比如说下面这条CSS定义:
Body{color:blue}
这是定义了Body中的文本颜色为蓝色。假如Body中含有表格,在有些浏览器中这句定义会使除表格之外的文本变成蓝色,而表格内部的文本颜色并不是蓝色。从技术上来说,这是不正确的,但是它确实存在。所以我们经常需要借助于某些技巧,比如将CSS定义成这样:
Body,table,th,td{color:blue}
这样表格内的文字也会变成蓝色了。
相关CSS教程:
- 相关链接:
- 教程说明:
CSS教程-CSS继承性之深入剖析(2)。