我有一些Divs,我使用类和ID来设置它们,因为它们只是背景的占位符,所以它们本身就是emtpy。示例Div:
<div id='ranImg1' class='ranImg'></div>
然后我用这个css设置它们的样式:
.ranImg {
position:fixed;
z-index:0;
width:250px;
height:250px;
display:block;
}
#ranImg1 {
left:10px;
top:200px;
background-attachment:fixed;
background-image:url(http://localhost/MyAlbum//images/background/ranPaperclips.png);
background-repeat:no-repeat;
}
只要Div位于文档的左上角,图像就会正确显示,但当Div放置在页面的其他位置时,图像在页面的左上角保持(不可见),仅显示部分与div重叠(在示例中,这将是图像的底部)。
修改的 我试图定位这些Div而不影响我的其他布局,它们落后于其他布局。除了背景图像不遵循div位置这一事实外,这是有效的 所以基本上我的问题是,为什么不使用div的ranImg1 div定位的背景但是保留在左上角,以及如何解决这个问题?
答案 0 :(得分:3)
您的background-attachment:fixed
将相对于浏览器窗口附加背景图片。如果您希望它“跟随”div
位置,只需删除该行:
#ranImg1{
left:10px;
top:200px;
background-image:url(http://localhost/MyAlbum//images/background/ranPaperclips.png);
background-repeat:no-repeat;
}
您还可以设置background-position
属性以设置相对于包含div的背景:
background-position: 0px 0px;
我不确定这是否有助于除了background-attachment
以外的任何东西(还没有足够的咖啡!)