根据w3,margin元素的透明:
我已经构建了一个非常基本的 HTML 页面:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
<style>
body {
background-color: red;
}
</style>
</head>
<body></body>
</html>
在 Chrome 中,检查员报告“body”的边距为 8px:
但在页面上,边距全是背景色! (请注意,我的书签栏和红色背景之间没有空间 - 我保证我没有滚动。
那是怎么回事?
The CSS规范特殊情况吧。
根元素的背景变成了
画布并覆盖整个画布,锚定(对于
'背景位置')在同一点,如果它是
仅为根元素本身绘制。根元素不
再次绘制这个背景。
但是,对于 HTML 文档,我们建议作者指定
BODY 元素而不是 HTML 元素的背景。为了
根元素是 HTML“HTML”元素或 XHTML 的文档
计算出“透明”值的“html”元素
'background-color'和'none'用于'background-image',用户代理必须
而是使用从中计算出的背景属性值
元素的第一个 HTML“BODY”元素或 XHTML“body”元素子元素
为画布绘制背景,并且不得绘制背景
对于该子元素。这些背景也必须扎根于
与只为根部绘制相同的点
元素。
……大概是因为人们太习惯了<body background="#ff0000">
来自糟糕的旧时光。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)