css有哪些属性可以继承?

在我们深入探讨继承之前,有必要先理解文档树。所有的HTMl文档都是树,文档树由HTML元素组成,文档树和家族树类似,也有祖先、后代、父亲、孩子、兄弟。

而css样式表继承指的是,特定的css属性向下传递到后代元素。

为了看到继承的实际应用,我们将使用下面的HTML代码。

1.jpg-600

2.jpg-600

我们也使用CSS代码。注意:em元素未指定样式。

3.jpg-600

4.jpg-600

但是为什么em元素会变红?其并没有设置颜色样式。

因为em元素继承了p元素的颜色属性。

继承是网页开发者更加轻松,否则我们就要对所以的子孙元素指定属性。

5.jpg-600

CSS文件大小将会大大增加,变得更难创建与维护,同时降低了下载速度。

是否所以的CSS属性都可以继承呢?

非也!并非所以的CSS属性都支持继承。

如果每个CSS属性都继承,对于作者而言,反而会让事情更糟。

开发人员需要将子孙元素不需要的CSS属性一个一个地“关掉”。

那么有哪些属性可以自动继承呢?

有继承性的属性:

1、字体系列属性

  • font:组合字体

  • font-family:规定元素的字体系列

  • font-weight:设置字体的粗细

  • font-size:设置字体的尺寸

  • font-style:定义字体的风格

  • font-variant:设置小型大写字母的字体显示文本,这意味着所有的小写字母均会被转换为大写,但是所有使用小型大写字体的字母与其余文本相比,其字体尺寸更小。

  • font-stretch:允许你使文字变宽或变窄。所有主流浏览器都不支持。

  • font-size-adjust:为某个元素规定一个 aspect 值,字体的小写字母 "x" 的高度与"font-size" 高度之间的比率被称为一个字体的 aspect 值。这样就可以保持首选字体的 x-height。

2、文本系列属性

  • text-indent:文本缩进

  • text-align:文本水平对齐

  • line-height:行高

  • word-spacing:增加或减少单词间的空白(即字间隔)

  • letter-spacing:增加或减少字符间的空白(字符间距)

  • text-transform:控制文本大小写

  • direction:规定文本的书写方向

  • color:文本颜色

3、元素可见性:visibility

4、表格布局属性:caption-side、border-collapse、border-spacing、empty-cells、table-layout

5、列表属性:list-style-type、list-style-image、list-style-position、list-style

6、生成内容属性:quotes

7、光标属性:cursor

8、页面样式属性:page、page-break-inside、windows、orphans

9、声音样式属性:speak、speak-punctuation、speak-numeral、speak-header、speech-rate、volume、voice-family、pitch、pitch-range、stress、richness、、azimuth、elevation

所有元素可以继承的属性:

1、元素可见性:visibility、opacity2、光标属性:cursor

内联元素可以继承的属性:

1、字体系列属性2、除text-indent、text-align之外的文本系列属性

块级元素可以继承的属性:

1、text-indent、text-align

以上就是css有哪些属性可以继承?的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » CSS3 答疑