把一个接一个的div

时间:2014-08-20 10:37:50

标签: html css

我想设置两个div,如下所示。 http://snag.gy/ynuiY.jpg

这是我的HTML代码

<div id="topbar">
This is a top bar
</div>

<div id="wrapper"> 
wrapper
</div>

这是我的CSS

#wrapper{
    z-index:2;
    marign-top: 30px;
    width:80%;
    height:auto;
    background-color:#FFF;
    left:auto ;
    right:auto ;
    margin: auto;

}

#topbar{
    height:30px;
    width:100%;
    background-color:#333;
    position:absolute;
    top:0px;
    left: 0px;
    right: 0px;
    color:#FFF;
    overflow: hidden;
}

但输出如下。 (没有包装) http://i.stack.imgur.com/DXuWD.jpg

请帮我解决这个问题。

4 个答案:

答案 0 :(得分:2)

您必须将#wrapper边距更改为填充

JSfiddle Demo

<强> CSS

#wrapper{
    padding-top: 30px;
}

答案 1 :(得分:0)

我认为这就是你之后所做的: http://jsfiddle.net/ht8k40tr/

问题是由于您设置边距的顺序。

目前您将上边距设置为30px,但是您通过将所有边距设置为自动来重置该边距,更简单的方法是将边距设置为以下{{1将上边距设置为30px,将剩余边距设置为自动。

答案 2 :(得分:0)

另一种解决方案是将#topbar位置设为relative

#topbar{
    height:30px;
    width:100%;
    background-color:#333;
    position:relative;/*Change to relative*/
    color:#FFF;
    overflow: hidden;
}

同样是margin-topmarign-top

fiddle

答案 3 :(得分:0)

更改“margin-top:30px;” “填充顶部:30px;”

#wrapper {
    padding-top: 30px;
    width:80%;
    height:auto;
    background-color:#FFF;
    left:auto ;
    right:auto ;
    margin: auto;
}