Maison >interface Web >tutoriel CSS >Comment « translate3d » affecte-t-il le « z-index » CSS et comment puis-je maintenir l'ordre d'empilement ?

Comment « translate3d » affecte-t-il le « z-index » CSS et comment puis-je maintenir l'ordre d'empilement ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-09 20:25:15767parcourir

How Does `translate3d` Affect CSS `z-index`, and How Can I Maintain Stacking Order?

Impacts de la transformation 3D sur le z-Index CSS

Lorsque vous travaillez avec des éléments superposés en position absolue, les propriétés du z-index sont essentielles pour contrôler leur pile commande. Cependant, lors de l'utilisation de la transformation Translate3d WebKit, ce contrôle est perdu.

Explication

Lors d'une transformation Translate3d, les éléments sont déplacés dans un espace 3D. En attribuant une valeur au troisième paramètre (-1px dans ce cas), l'élément est positionné le long de l'axe z. Cependant, cette élévation dans l'espace 3D modifie également la façon dont les valeurs de l'index z sont appliquées, ce qui amène les éléments à ignorer leur ordre de pile établi.

Maintenir l'ordre de la pile

Pour préserver l'ordre de la pile lors des transformations 3D, utilisez la propriété CSS transform-style: flat; pour l'élément concerné.

Exemple de mise en œuvre

Avant la transformation
Définissez les valeurs de transition du webkit :

element.css({ '-webkit-transition-duration': duration + 's' });
element.css({ '-webkit-transition-property': '-webkit-transform' });

Pendant la transformation
Animez à l'aide de translate3d, en vous assurant que le troisième paramètre est défini pour aplatir la position de l'élément le long de l'axe z :

element.css({ '-webkit-transform': 'translate3d(' + hwDelta + 'px, 0, 0)' });

Après la transformation
Appliquer transform-style: flat; pour conserver l'ordre de la pile :

element.css({ 'transform-style': 'flat' });

En incorporant cette propriété, les éléments conserveront leur empilement d'index z avant la transformation, permettant un affichage correct dans un contexte multicouche.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn