Supposons que j'ai ce code:
<div class="parent">
<div class="child">
Hello world
</div>
</div>
<div class="wholePage"></div>
Ce jsFiddle: http://jsfiddle.net/ZjXMR/
Maintenant, j'ai besoin d'avoir <div class="child">
en haut de <div class="wholePage">
mais dans le jsFiddle vous pouvez voir que l’élément enfant rendu avant <div class="wholePage">
.
Si vous supprimez le parent
class position
ou z-index
, tout fonctionne bien. C’est le comportement correct dont j’ai besoin: http://jsfiddle.net/ZjXMR/1/
Comment puis-je faire cela avec z-index
et sans rien enlever de la page?
C'est impossible en tant qu'enfant z-index
est défini sur le même index d'empilement que son parent.
Vous avez déjà résolu le problème en supprimant l'index z du parent, conservez-le ainsi ou faites de l'élément un frère au lieu d'enfant.
Pour obtenir ce que vous voulez sans supprimer aucun style, vous devez agrandir l'index z de la classe '.parent' puis celui de la classe '.wholePage'.
.parent {
position: relative;
z-index: 4; /*matters since it's sibling to wholePage*/
}
.child {
position: relative;
z-index:1; /*doesn't matter */
background-color: white;
padding: 5px;
}
jsFiddle: http://jsfiddle.net/ZjXMR/2/
Donnez le z-index parent: -1, ou l'opacité: 0.99
Rien n'est impossible. Utilise la force.
.parent {
position: relative;
}
.child {
position: absolute;
top:0;
left: 0;
right: 0;
bottom: 0;
z-index: 100;
}
Utilisez une position non statique avec un plus grand indice z dans l'élément enfant:
.parent {
position: absolute
z-index: 100;
}
.child {
position: relative;
z-index: 101;
}
Essayez d'utiliser ce code, cela a fonctionné pour moi:
z-index: unset;