1

我正在一个具有固定宽度 div 居中的网站上工作,我想在 div 的两侧有两个设计,我可以使用两个 div。问题是我这样做的方式,这些图像会增加站点宽度,如果窗口太小,会导致出现水平滚动条。即使整个内容 div 都适合屏幕。

CSS

.container {
    margin: 0 auto;
    width: 500px;
}

.span {
    margin-right: 0;
    width: 500px;
}

.logo {
    margin-top: 25px;
}

.logo-img {
    height: 60px;
    left: -21px;
    position: relative;
}

.swirls {
    height: 0px;
}

.left-swirls {
    position: relative;
    top: -50px;
    right: 100px;
    width: 188px;
    z-index: -1;
}

.right-swirls {
    position: relative;
    top: -50px;
    left: 215px;
    width: 200px;
    z-index: -1;
}

.nav {
    background-color: #0ff;
}

.content {
    background-color: #00f;
    height: 200px;
}

HTML

<div class="container">
        <div class="span logo">
            <img src="http://imageshack.us/a/img839/2507/logongv.png" class="logo-img"/>
        </div>
        <div class="span swirls">
            <img src="http://imageshack.us/a/img831/3254/leftswirls.png" class="left-swirls" />
            <img src="http://imageshack.us/a/img600/7424/rightswirls.png" class="right-swirls" />
        </div>
    <div class="span last nav">
        Nav Bar
    </div>
    <div class="span content">
        Body content
    </div>
</div>

可以在此处查看该问题的示例:http: //jsfiddle.net/e4j6b/8/

我试图让背景图像相对于 div 而不是浏览器的侧面居中。

有没有办法让背景图像居中,就像带有边距的 div:0 auto?

4

1 回答 1

2

如果您希望 .left-swirls 和 .right-swirls 不增加文档的宽度,那么它们应该是背景图像。(对于现代浏览器,多个背景图像可以正常工作。)

示例:http: //jsfiddle.net/MbGSP/1/

body {
  background: url(http://imageshack.us/a/img831/3254/leftswirls.png) center center no-repeat,
              url(http://imageshack.us/a/img600/7424/rightswirls.png) center center no-repeat;
}

您可以将背景图像水平和垂直居中,center center用于位置。

于 2012-12-14T21:16:43.617 回答