为什么我的元素有位置:绝对总是出现在位置下方:相对项目?

时间:2009-02-23 17:35:07

标签: html css xhtml

这一切都在问题中,但这是一个简单的例子

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
    <title>TEST</title>
</head>
<body style="margin:0;padding:0">

<div style="background-color:#eeeeee;margin:auto;height:500px;width:500px">
    <div style="position:relative">
        <span style="position:absolute;display:block;height:250px;width:250px;background:green;z-layer:2"><br /><br />Should be on top</span>
    </div>
    <span style="position:relative;display:block;width:500px;background:blue;z-layer:1">Actually on top</span>
</div>

</body>
</html>

2 个答案:

答案 0 :(得分:11)

而不是“z-layer”使用“z-index”

绝对跨度也在相对div中,没有z-index

这是正确的html:

<div style="background-color:#eeeeee;margin:auto;height:500px;width:500px">
    <div style="position:relative;z-index:2">
        <span style="position:absolute;display:block;height:250px;width:250px;background:green"><br /><br />Should be on top</span>
    </div>
    <span style="position:relative;display:block;width:500px;background:blue;z-index:1">Actually on top</span>
</div>

答案 1 :(得分:3)

这是因为当您将元素“绝对”定位时,它将从文档对象模型中的文档流中删除,因此保留在文档流中的元素将显示在已删除元素的“上方”。对于跨浏览器兼容性,将z-index调整放在绝对定位元素的父元素上。