将div放在文本顶部,没有绝对定位

时间:2012-02-12 17:28:44

标签: html css

我现在有一个基本站点,其背景为灰色,背景为文本,使用外部javascript移动/动画。我希望另一个div位于此背景div的顶部,但我不想通过使用绝对定位来牺牲页面居中。有什么想法吗?

<body>
    <div id="background">
        <p id="backgroundText">
        </p>

        <div id="mainBody">
        </div>
    </div>
</body>


* {
    margin: 0;
    padding: 0;
    border: 0;
    font-family: monospace;
}

head {
    display: none;
}

body {
    background-color: #333;
    overflow: hidden;
}

div#background {
    z-index: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

p#backgroundText {
    overflow: hidden;
    color: #494949;
    font-size: 13px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}

div#mainBody {
    width: 500px;
    height: 500px;
    margin: 0 auto;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 50%;
    background-color: white;
}

1 个答案:

答案 0 :(得分:3)

您可以使用相对定位。

div#mainBody {
    width: 500px;
    height: 500px;
    margin: 0 auto;
    z-index: 1;
    position: relative;
    background-color: white;
}

为了利用z-index属性,您必须使用某种位置属性。