Использование z-index
В первой статье этого руководства, Укладка без свойства z-index, объясняется, как укладка элементов организована по умолчанию. Если вы хотите создать пользовательский порядок укладки, вы можете использовать свойство z-index на позиционированном элементе.
Свойство z-index может быть задано целым числом (положительным, нулевым или отрицательным), которое представляет положение элемента вдоль воображаемой оси z. Если вы не знакомы с термином «ось z», представьте страницу как стопку слоёв, каждый из которых имеет номер. Слои отображаются в числовом порядке, причём более крупные номера располагаются поверх меньших (X представляет произвольное положительное целое число):
| Слой | Описание |
|---|---|
| Нижний слой | Самый удалённый от наблюдателя |
| Слой -X | Слои с отрицательными значениями z-index |
| Слой 0 | Слой отображения по умолчанию |
| Слой X | Слои с положительными значениями z-index |
| Верхний слой | Самый близкий к наблюдателю |
Примечание:
- Когда свойство
z-indexне задано, элементы отображаются на слое отображения по умолчанию (Слой 0). - Если несколько элементов имеют одинаковое значение
z-index(т. е. они находятся на одном слое), применяются правила укладки, описанные в разделе Укладка без свойства z-index.
Пример
В этом примере порядок укладки слоёв перестроен с помощью z-index. Свойство z-index DIV #5 не имеет эффекта, так как это не позиционированный элемент.
HTML
<div id="abs1"> <strong>DIV #1</strong> <br />position: absolute; <br />z-index: 5; </div> <div id="rel1"> <strong>DIV #2</strong> <br />position: relative; <br />z-index: 3; </div> <div id="rel2"> <strong>DIV #3</strong> <br />position: relative; <br />z-index: 2; </div> <div id="abs2"> <strong>DIV #4</strong> <br />position: absolute; <br />z-index: 1; </div> <div id="sta1"> <strong>DIV #5</strong> <br />no positioning <br />z-index: 8; </div>
CSS
div {
padding: 10px;
opacity: 0.7;
text-align: center;
}
strong {
font-family: sans-serif;
}
#abs1 {
z-index: 5;
position: absolute;
width: 150px;
height: 350px;
top: 10px;
left: 10px;
border: 1px dashed #900;
background-color: #fdd;
}
#rel1 {
z-index: 3;
height: 100px;
position: relative;
top: 30px;
border: 1px dashed #696;
background-color: #cfc;
margin: 0px 50px 0px 50px;
}
#rel2 {
z-index: 2;
height: 100px;
position: relative;
top: 15px;
left: 20px;
border: 1px dashed #696;
background-color: #cfc;
margin: 0px 50px 0px 50px;
}
#abs2 {
z-index: 1;
position: absolute;
width: 150px;
height: 350px;
top: 10px;
right: 10px;
border: 1px dashed #900;
background-color: #fdd;
}
#sta1 {
z-index: 8;
height: 70px;
border: 1px dashed #996;
background-color: #ffc;
margin: 0px 50px 0px 50px;
}
Результат
См. также
-
Укладка без свойства z-index: Правила укладки, которые применяются, когда
z-indexне используется. - Укладка плавающих элементов: Как обрабатываются плавающие элементы при укладке.
- Контекст укладки: Примечания по контексту укладки.
- Пример контекста укладки 1: 2-уровневая HTML-иерархия, z-index на последнем уровне
- Пример контекста укладки 2: 2-уровневая HTML-иерархия, z-index на всех уровнях
- Пример контекста укладки 3: 3-уровневая HTML-иерархия, z-index на втором уровне
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_positioned_layout/Understanding_z-index/Using_z-index