背景覆盖整个屏幕
问题描述:
我有一个背景图像,涵盖了我的整个屏幕。但是,一旦我将元素添加到我的html文件中,背景图像只覆盖这个新元素的区域,其余的将是白色的。背景覆盖整个屏幕
我该如何确定背景在我的元素之后继续,直到屏幕底部?
#backgroundLanding {
background: url('/assets/images/landing_new4.jpg');
background-size: auto;
background-position: center center;
background-attachment: fixed;
top: 0;
}
<div id="backgroundLanding" >
<div>
<!--Flight Search Directive-->
<!--flight-search>
</div>
<!--impressum></impressum-->
</div>
</div>
如果我使用background-size:cover,它会显示相同。 我该如何解决这个问题?
答
我会做固定包装的位置,并添加此css:
#backgroundLanding {
position:fixed:
top:0;
right:0;
bottom:0;
left:0;
background-size:cover;
}
但是这意味着内容将永远不会滚动。但我相信这是预期的效果。
此外,即使将新内容动态添加到文档,它也会始终填满屏幕。
答
如果您没有明确提及,父级Div的高度取决于其子元素。 这就是为什么你看到基于子元素的背景。
提到父母的必要高度。如果你想要它整个页面,那么你可以给背景的身体。
答
如果你想要背景图像填充容器,使用background-size: cover;
可以实现它,图像仍然保持其分辨率。
但是,它看起来像你的问题是容器不适应浏览器窗口。它将被其子节点拉伸。
@ lharby给出了一个解决方案。另一种解决方案是这样的:
html, body {height: 100%;} /* I assume #backgroundLanding is a child node of <body> */
#backgroundLanding {
background-image: url('/assets/images/landing_new4.jpg');
background-size: cover;
height: 100%;
}
这也是我对my own blog使用。
你有什么小提琴演示? – 2014-12-03 10:46:08
background-size:100%100% – aashi 2014-12-03 10:46:10