尝试使用具有不同z索引的三个背景导致仅显示一个图层。
This jsfiddle有相关的代码和示例(减去巨大的基础css文件......没有它就没有改变行为)。
失败的类是
skyline
和
#footer_container
而#header_container
正常运行。
答案 0 :(得分:1)
我已更新你的小提琴here。
由于你的CSS语法, #footer-container
没有显示其背景图片。由于您将背景图片网址和非重复图片组合在一起,因此您需要使用background
简写而不是background-image
属性。
检查此类事情的一个好方法是使用浏览器检查元素(在Chrome中:右键单击>检查元素),找到未正确显示的元素。您注意到,由于语法错误,您的#footer-container
div的背景图片属性实际上被Chrome划掉了。
您的.skyline
课程中也存在一些语法问题。首先,您的body
和内部div都有一个.skyline
类。这有点令人困惑,所以你应该删除它或在CSS中更具体,例如使用p.skyline
,div.skyline
等。正如您目前所写的那样,您的身体和.skyline
div都会获得背景图片。您还没有包含结束</body>
标记。我假设你不想在div和身体上都有背景图片,所以我在更新的小提琴中删除了你的身体标签。
此外,在.skyline
css中,您同时拥有height: 546
和height: auto
。首先,CSS中的高度应该具有特定值(例如px,em,%)。但是,对于<img src="img.jpg" height="546" />
,只需将&#34; 546&#34;因为它的高度会很好。其次,每个类只应有一个高度值。
天际线问题本身就是你没有在第126行关闭你的花括号,因此根本没有任何样式应用于.skyline
。一旦关闭,仍然存在问题。它没有宽度。因此,让我们将其设置为100%。仍然是虚无...这是因为.skyline
的父div#container
也是无宽度的。所以我们也要在它上面抛出100%的宽度。然后我们开始营业。
一个突出语法错误的优秀文本编辑器可以帮助你解决问题,特别是当你刚刚开始时。