CSS 继承和覆盖
在某些情况下,可能需要阻止子元素继承从其父元素继承的样式。虽然没有特定的 CSS 属性可以实现此目的,但可以手动恢复样式更改或添加其他类来定义更具体的样式。
例如,请考虑以下 HTML 和 CSS:
HTML:
<body> <div>
CSS:
form div {font-size: 12px; font-weight: bold;} div.content { /* Can anything go here? */ }
正常情况下,文本会屏蔽“Content of the paragraph”和“Content of the span”将从父“form div”元素继承字体大小和粗细,导致两个文本都是粗体和 12px。
要防止这种继承并将样式限制为仅“段落内容”,可以手动恢复样式更改:
div { color: green; } form div { color: red; } form div div.content { color: green; }
或者,如果可能的话,向标记添加其他类可以提供更精确的样式:
<form div.sub { color: red; } form div div.content { /* remains green */ }
现代浏览器的最新版本现在支持“恢复”属性以显式恢复特定元素的继承:
div.content { all: revert; }
这允许更简洁和灵活的样式覆盖。
以上是如何防止CSS继承父元素?的详细内容。更多信息请关注PHP中文网其他相关文章!