2010-10-29 45 views
0

我有一个大的div住房我的背景图片。一般来说,它将以双方离开屏幕为中心。因为它是背景,我不希望滚动条出现在浏览器上 - 这里有解决方案吗?可以一个大的div不触发浏览器滚动条?

感谢

编辑:让我根据答案澄清:

我有超出浏览器的边界的大图像,但是,我需要分配给一个div背景或IMG代替因为我正在操纵它w jquery等

+0

那么,自动高度呢?你能举个例子吗? – Ency 2010-10-29 22:43:23

+3

这可能是值得解释为什么你不能使用通常的解决方案(只是在CSS中使用背景图像)(我假设有一个很好的理由:) – psmears 2010-10-29 22:43:48

+0

是否有一个原因,你不能只是将图像设置为背景通过CSS而不是黑客一个div(background-image:url('filename.ext');)? – 2010-10-29 22:45:21

回答

0

基于附加信息,我想出了这个例子。图像是填充整个可见区域的div的背景,并且非常像它的身体背景图像一样(在Firefox中测试过)。您甚至可以通过修改background-position属性来滚动图像。

<html> 
<head> 
<style> 
#test { 
    position: fixed; 
    left: 0px; 
    right: 0px; 
    top: 0px; 
    bottom: 0px; 
    background-image: url('http://farm5.static.flickr.com/4121/4805074237_6cf5880f75_o.jpg'); 
    background-position: 50% 50%; 
    overflow: none; 
    z-index: -1; 
} 
</style> 
</head> 
<body> 
<div id="test"> 
</div> 

Here's some other stuff in the body of the page. 

<div> 
and some stuff in a div in the body of the page. 
</div> 

</body> 
</html> 
1

我刚刚遇到了和你一样的情况。

经过一些实验后,我发现它是由CSS属性'位置'的错误值引起的。

当我将div的位置设置从'fixed'更改为'absolute'时,事情就像您想要的一样。

1

这对我有效;我记得知道它在Opera中不起作用,但那是很久以前的事了。

html, body { overflow-x: hidden; }