技术栈

主页 > 前端开发 >

【CSS】继承样式

技术栈 - 中国领先的IT技术门户

继承是指,应用在某个标签上的CSS属性传给了内部嵌套的标签。

例如,<p>标签嵌套在<body>标签里,所以应用在<body>标签上的部分样式(能继承的那部分)会被<p>标签继承。

比如

HTML代码

<body>
    <p>......</p>
</body>

CSS代码

body {
    font-size: 1.2em;
    color: orange;
}

在<body>中定义了字号和颜色,那么<body>标签的后代都会继承这个字号和颜色。


CSS属性也能隔代继承。如果<p>标签里面有<em>、<strong>或者<span>等标签,那么<em>、<strong>和<span>标签也会继承应用到<body>标签上的部分样式(能继承的那部分)。


继承的局限

上面所说的,继承部分样式,是因为很多CSS样式根本不会传给后代标签。例如border属性就不会被继承。

当然,这是很有道理的。如果继承,设置了border属性的元素里每个标签都会有边框。那在开发中就相当苦恼了。

以下是在学习和开发中总结出来“不一定会被继承”的几条规律:

  • 通常会影响元素在页面中所在位置的属性,以及设置元素外边距、背景色和边框的属性不会被继承。
  • 样式冲突时,更具体的样式胜出。


所谓“更具体的样式胜出”,讲的是CSS的层叠,也就关系到CSS特指度的问题。

责任编辑:admin  二维码分享:
本文标签: 标签body继承CSS样式属性
点击我更换图片

评论列表