0
Почему мой элемент с position: absolute всегда отображается под элементами position: relative?
Это все в вопросе, но вот простой пример
<!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)2
0
Это происходит потому, что когда вы позиционируете элемент «абсолютно», он удаляется из потока документа в объектной модели документа, и поэтому элементы, которые остаются в потоке документа, появляются «над» удаленным элементом. Для кроссбраузерной совместимости поместите свои настройки z-index на родительский элемент абсолютно позиционированного элемента.
0
вместо "z-слой" используйте "z-index"
также абсолютный диапазон находится в относительном div без z-индекса
Вот правильный 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>