绝对中心div没有负边距

时间:2012-07-19 06:19:57

标签: html css

我尝试了大约6种不同的方法,并且无法使其发挥作用。

我正在尝试使用position:absolute;

在页面上水平居中“div.content”

此方法适用于所有浏览器,但如果缩小页面大小,则会在底部显示滚动条:

http://jsfiddle.net/AuqXY/16/

HTML:

<div class="wrapper">
    <div class="header"></div>
    <div class="footer"></div>
    <div class="content">
        <div class="content2">CENTER THIS DIV</div>
    </div>
</div>

CSS:

div.header {
    background:url('http://i.istockimg.com/file_thumbview_approve/11670843/2/stock-illustration-11670843-seamless-wallpaper-background-tile.jpg') top center repeat-x;
    height:150px;        
}

div.footer {
    background:url('http://www.featurepics.com/FI/Thumb300/20081029/Blue-Tile-Background-947601.jpg') top left repeat-x;
    height:150px;        
}

div.content {
    position:absolute;
    top:20px;
    left:50%;
    height:250px;
    width:300px;        
}

div.content2 {
    position:relative;
    left:-50%;
    background:white;  
    height:250px;
}

3 个答案:

答案 0 :(得分:2)

我建议使用这样的负边距:http://jsfiddle.net/joshnh/HFwMT/

以下是经过调整的代码:

HTML:

<div class="header"></div>
<div class="content">
   <div class="content2">HERE</div>
</div>
<div class="footer"></div>​

<强> CSS:

.header {
    background: url('http://i.istockimg.com/file_thumbview_approve/11670843/2/stock-illustration-11670843-seamless-wallpaper-background-tile.jpg') top center repeat-x;
    height: 150px;        
}
.footer {
    background: url('http://www.featurepics.com/FI/Thumb300/20081029/Blue-Tile-Background-947601.jpg') top left repeat-x;
    height: 150px;        
}
.content2 {
    background: #fff;  
    height: 250px;
    left: 50%;
    margin-left: -150px; /* Half of the width */
    margin-top: -130px;   
    position: absolute;
    width: 300px;
}​

答案 1 :(得分:0)

你可以试试这个..我没有测试过它..

div.content {
        position: fixed;
        top: 0%;
        left: 0%;
        width: 100%;
        height: 100%;      
    }

    div.content2 {
        position: fixed;
        top: 50%;
        left: 50%;
        border: 0px;    
        overflow: none;
    }

答案 2 :(得分:-4)

我不太清楚这意味着什么: 我试图使用绝对中心div。 但我发现标签效果很好。

<div class="wrapper">
    <div class="header"></div>
    <div class="footer"></div>
    <div class="content">
        <center><div class="content2">HERE</div></center>
    </div>
</div>

CSS被诅咒。除此之外,你需要一根魔杖(据我所知)。