我已经建立了一些背景div的主题博客我正在制作。我使用3种颜色的标题,一个灰色的背景,我想添加一个纹理的背景。我有半透明的图像,我想瓷砖,但我不确定最好的方式有这项工作。我不想在包含图像的div上position: fixed;,这样它将在您滚动时移动。
示例代码:
http://jsfiddle.net/YPXmT/
有没有办法在没有滚动条的情况下实现这一点?(注意,我不想去掉滚动条,因为内容可能需要滚动。)

最佳答案

从你的小提琴例子来看,你大部分时间都在那里。您只需使backgroundTexture divheightwidth100%而不是使用的静态像素值:

#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: absoluteheight/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:absoluteoverflow: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/

10-14 17:30
查看更多