我已经建立了一些背景div的主题博客我正在制作。我使用3种颜色的标题,一个灰色的背景,我想添加一个纹理的背景。我有半透明的图像,我想瓷砖,但我不确定最好的方式有这项工作。我不想在包含图像的div上position: fixed;
,这样它将在您滚动时移动。
示例代码:
http://jsfiddle.net/YPXmT/
有没有办法在没有滚动条的情况下实现这一点?(注意,我不想去掉滚动条,因为内容可能需要滚动。)
最佳答案
从你的小提琴例子来看,你大部分时间都在那里。您只需使backgroundTexture divheight
和width
100%
而不是使用的静态像素值:
#backtexture {
position: absolute;
overflow: hidden;
width: 100%;
height: 100%;
background : url('http://static.tumblr.com/wyzt2fm/Hq8mhgfry/hp_asset_diagonalline.png');
}
更简单的更新:
简单是最好的时候。
您只需添加:
body{
position: relative
}
不要费心制作容器div和如下重新排列元素,只需使身体的相对位置应该为您解决这个问题。
更新:(使用上面的更新,为子孙后代保留)
根据下面的注释,使用上面的代码,任何使窗口滚动到可见空间之外的内容都不包括背景。这是因为div设置为
position: absolute
和height/width: 100%
。div的大小正在调整为可视空间的大小,但是任何超出该大小的内容都会导致背景div看起来像已停止。要解决这个问题,你只需要稍微调整一下你的HTML和CSS。而不是上面的CSS使用:#backtexture {
width: 100%;
height: 100%;
background : url('http://static.tumblr.com/wyzt2fm/Hq8mhgfry/hp_asset_diagonalline.png');
}
注意我们删除了
position:absolute
和overflow:hidden
。接下来,我们更改HTML,使背景不仅仅是放置在页面上的空div,而是用作页面上所有其他元素的容器:<div id="backtexture">
<div id="redtop"></div>
<div id="orangetop"></div>
<div id="yellowtop"></div>
<div id="wrapper">
</div>
这应该可以做到。
叉小提琴:http://jsfiddle.net/digthedoug/pVxSq/
关于html - 当我已经在使用背景时,在整个页面上平铺图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14612956/