HTML background-size:覆盖浮动对象

时间:2012-11-05 16:36:05

标签: css3

我有一个简单的页面,身体有一个图像背景,background-size:cover。无论内容数量多少,我都会设置html { height:100% }以填满整个页面。到目前为止,一切都按预期工作。

我添加了div并设置了position:absolute; right:0; width:200px;这再次按预期工作,直到我添加了内容。

如果填充此div以至于内容占用的空间超出页面高度,则会出现滚动条。向下滚动显示背景图像实际上并不覆盖整个页面。

这是因为我的div高于HTML高度的100%。

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

您可以将background-attachment:fixed;添加到body元素。

这种方法的警告是背景现在在视口中固定,不会随文档滚动。

https://developer.mozilla.org/en-US/docs/CSS/background-attachment

答案 1 :(得分:0)

就像我在this codepen那样做,它应该可以正常工作。

更新 :(使用一些JS)

请参阅this codepen以获取更完整的解决方案。

答案 2 :(得分:0)

不是通过position:absolute定位任何项目,而是尽可能地使用float

我还在<div>内部的全部内容中添加了<body>包装器,这有助于正确格式化并相应地拉伸包含<div>body标记及其背景属性现在表现正常!