Div背景不适合Div

时间:2008-12-01 20:33:06

标签: css positioning background-image

我有一些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定位的背景但是保留在左上角,以及如何解决这个问题?

1 个答案:

答案 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以外的任何东西(还没有足够的咖啡!)