BODY标记的背景颜色应用于整个HTML

BODY标记的背景颜色应用于整个HTML,第1张

BODY标记的背景颜色应用于整个HTML

这的确令人费解,但它是在CSS2.1规范规定,第14.2背景:如果计算出的值

background-color
transparent
和的计算值
background-image
none
html
元素(如东西都默认情况下),浏览器必须改用的计算值
body
元素的背景属性,并且不得渲染背景
body
(即使其透明)。也就是说,如果缺少自己的背景,
body
背景就会神奇地变成
html
背景
html
-这只会影响背景属性,而不会影响
body
元素的真实高度

我还没有看到这种奇怪规则的任何原理,该规则规定了一种“反向继承”。但是它在CSS 2.1中明确指定并由浏览器应用。

如其他答案所述,您可以通过将背景设置为

html
(使
body
背景仅实际应用
body
)或在其中使用wrapper元素
body
并在其上设置高度(因为应用了特殊规则)来使内容具有特定高度的背景到
body
)。

感谢当我在WHATWG邮件列表中询问CSS规范时,Anne van Kesteren指出了CSS规范。(我以为我很了解CSS 2.1,但实际上不知道。)



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5649845.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存