当您在 Chrome 中的特定页面上移动 body 元素(测试 v23)position: relative; top: 100px;
时,背景仍然应用于整个视口。
这是 Chrome 错误还是任何人都可以解释行为/提供灵活的解决方案?
当您在 Chrome 中的特定页面上移动 body 元素(测试 v23)position: relative; top: 100px;
时,背景仍然应用于整个视口。
这是 Chrome 错误还是任何人都可以解释行为/提供灵活的解决方案?
这实际上是所有浏览器的预期行为:虽然body
元素确实从顶部偏移 100 像素,但背景本身正在无缝传播到视口,如本答案第一部分所述。这可能是 HTML 表示属性时代的遗留物,在该时代设置背景属性body
允许将背景传播到视口,从而呈现将背景应用于整个页面的外观。
如果您想将背景限制为仅body
元素,只需提供html
除 之外的任何背景颜色transparent
,或为其提供背景图像。然后视口将使用背景html
代替。