Layout CSS - A propriedade z-index
A z-index
propriedade especifica a ordem de pilha de um elemento.
A propriedade z-index
Quando os elementos são posicionados, eles podem se sobrepor a outros elementos.
A z-index
propriedade especifica a ordem de pilha de um elemento (qual elemento deve ser colocado na frente ou atrás dos outros).
Um elemento pode ter uma ordem de pilha positiva ou negativa:
Este é um título
Como a imagem tem um índice z de -1, ela será colocada atrás do texto.
Exemplo
img
{
position: absolute;
left: 0px;
top: 0px;
z-index: -1;
}
Nota: z-index
só funciona em elementos posicionados (posição: absoluto, posição: relativa, posição: fixo ou posição: fixo) e itens flex
(elementos que são filhos diretos de display: elementos flex).
Outro exemplo de índice z
Exemplo
Aqui vemos que um elemento com maior ordem de pilha está sempre acima de um elemento com menor ordem de pilha:
<html>
<head>
<style>
.container {
position: relative;
}
.black-box {
position: relative;
z-index: 1;
border: 2px solid black;
height: 100px;
margin: 30px;
}
.gray-box {
position: absolute;
z-index: 3;
background: lightgray;
height: 60px;
width: 70%;
left: 50px;
top: 50px;
}
.green-box {
position: absolute;
z-index: 2;
background: lightgreen;
width: 35%;
left: 270px;
top: -15px;
height:
100px;
}
</style>
</head>
<body>
<div class="container">
<div
class="black-box">Black box</div>
<div class="gray-box">Gray
box</div>
<div class="green-box">Green box</div>
</div>
</body>
</html>
Sem índice z
Se dois elementos posicionados se sobrepuserem sem um z-index
especificado, o último elemento definido no código HTML será mostrado no topo.
Exemplo
Mesmo exemplo acima, mas aqui sem z-index especificado:
<html>
<head>
<style>
.container {
position: relative;
}
.black-box {
position: relative;
border: 2px solid black;
height: 100px;
margin: 30px;
}
.gray-box {
position: absolute;
background: lightgray;
height: 60px;
width: 70%;
left: 50px;
top: 50px;
}
.green-box {
position: absolute;
background: lightgreen;
width: 35%;
left: 270px;
top: -15px;
height:
100px;
}
</style>
</head>
<body>
<div class="container">
<div
class="black-box">Black box</div>
<div class="gray-box">Gray
box</div>
<div class="green-box">Green box</div>
</div>
</body>
</html>
Propriedade CSS
Property | Description |
---|---|
z-index | Sets the stack order of an element |