Maison  >  Article  >  interface Web  >  Pourquoi mon Z-Index ne fonctionne-t-il pas lorsque j'utilise Transform ou Translate ?

Pourquoi mon Z-Index ne fonctionne-t-il pas lorsque j'utilise Transform ou Translate ?

DDD
DDDoriginal
2024-11-02 13:23:30948parcourir

Why Is My Z-Index Not Working When Using Transform or Translate?

Z-Index ne fonctionne pas : comprendre le problème

La propriété z-index est une propriété CSS largement utilisée qui contrôle l'ordre dans lequel les éléments sont superposés dans une page Web. Cependant, il semble parfois mal fonctionner, laissant les éléments obstinément empilés dans le mauvais ordre. Ce problème peut être particulièrement gênant lorsqu'il s'agit de mises en page complexes impliquant plusieurs couches.

Comprendre les problèmes de l'index Z :

Un exemple spécifique où le z-index semble inefficace est lorsque vous essayez de positionner un élément derrière un cercle. Malgré l'attribution d'une valeur d'indice z inférieure à l'élément, celui-ci reste visible en permanence au-dessus du cercle. La raison derrière cela réside dans la façon dont les propriétés de transformation et de traduction interagissent avec z-index.

Impact de la transformation et de la traduction :

Lors de l'utilisation des propriétés de transformation ou de traduction pour déplacer des éléments , ils créent un contexte d'empilement distinct. Ce contexte séparé place les éléments en dehors du flux normal du document et rend la propriété z-index inefficace. Par conséquent, les éléments de ce contexte distinct ne peuvent pas être positionnés correctement à l'aide du z-index seul.

Solution : Résoudre le dilemme du z-index :

Pour résoudre ce problème , vous pouvez remplacer les propriétés de transformation ou de traduction par les propriétés supérieure et gauche. En définissant des valeurs spécifiques pour le haut et la gauche, vous pouvez positionner manuellement l'élément dans le contexte d'empilement normal et reprendre le contrôle de son placement à l'aide de z-index.

Exemple modifié :

L'extrait de code modifié suivant montre comment le remplacement de transform par top et left vous permet de positionner correctement l'élément derrière le cercle :

<code class="css">#background #mainplanet:before, #background #mainplanet:after {
  ...
  transform: none; /* Remove the transform property */
  top: 10px; /* Set the top position */
  left: -80px; /* Set the left position */
  ...
}</code>

En apportant ces modifications, vous pouvez désormais utiliser z-index pour contrôler efficacement la superposition d'éléments et obtenir la hiérarchie visuelle souhaitée.

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