Existe-t-il une limite supérieure aux valeurs z-index dans les navigateurs Web?

StackOverflow https://stackoverflow.com/questions/227738

  •  03-07-2019
  •  | 
  •  

Question

J'ai un cas où une annonce tierce est en train de couler à travers l'implémentation de ma fenêtre modale. J'aimerais augmenter l'index z de la superposition modale le plus haut possible pour que l'annonce ne s'affiche pas par-dessus. Y a-t-il une limite aux valeurs z-index? Je suis sûr que s'il existe, cela varie selon le navigateur. Quelqu'un sait?

Était-ce utile?

La solution

N'oubliez pas que z-index ne fonctionne pas globalement, mais uniquement dans un "contexte d'empilement" (qui a du mal à être digéré définition en CSS), et si la publicité établit son propre contexte de superposition, alors z-index les valeurs que vous définissez ailleurs peuvent ne pas l'affecter du tout.

Cependant, il est plus probable que ce soit un problème de & window; windowed " Flash (objet sans attribut wmode = transparent ), que les navigateurs affichent par-dessus tout, comme s'il s'agissait d'une fenêtre située au-dessus de la fenêtre du navigateur . Dans ce cas, z-index ne vous aidera pas du tout. Vous devrez forcer ad [-provider] à utiliser wmode = transparent ou à utiliser des hacks loufoques avec des iframes.

Autres conseils

La valeur zIndex maximale prise en charge par la plupart des navigateurs est 2147483647 (2 ^ 31-1), mais Opera 9.2 n'accepte pas les valeurs supérieures à 2147483583; Ils l'ont corrigé dans la version 9.5.

Pas vraiment, mais vous pourriez considérer les limitations naturelles d’un système, comme une gamme int. Je le maintiendrais probablement sous 32 767 . J'ai définitivement dépassé cela en javascript tout en travaillant sur un problème similaire, et je n'ai rencontré aucun problème sur les principaux navigateurs et plates-formes qui me préoccupaient à l'époque.

Dans le cas des annonces et des superpositions tierces, assurez-vous que wmode = "transparent" sur l'incorporation de la version flash constitue un problème courant dans le même sens. Il faut également noter que IE a un bogue avec la superposition d’index z, alors si vous ne voyez pas le succès, assurez-vous de ne pas vous cogner la tête contre le mur avec celui-là *.

J'aime toujours respecter une sorte de convention et ne pas utiliser de chiffres arbitraires. Par exemple, dans mon css, tout se situe peut-être entre 0 et 10 . Peut-être que les choses dhtml se produisent dans les valeurs de position de 100, avec un index z significatif pour un module donné.

* Note: Le bogue d'IE, pour être spécifique, est que IE considère qu'une nouvelle instance de flux de documents est un nouveau contexte de superposition pour z-index. Vous devez vous assurer que vos index z ne sont pas perdus dans la hiérarchie DOM lorsqu'un nœud enfant qui hériterait normalement de votre index z est restitué dans son propre contexte de positionnement.

Citation de http: // techtrouts.com/is-there-a-limit-to-the-css-z-index-property/ :

Théoriquement, la propriété z-index devrait être illimitée, ou du moins dans une plage de type int, selon le système d'exploitation et le navigateur. Toutefois, pour éviter les problèmes de navigateur, vous devez limiter les valeurs de votre index z à +/- 32767.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top