Vraag Is er een bovengrens voor z-indexwaarden in webbrowsers?


Ik heb een geval waarin een advertentie van een derde partij bloedt door mijn modale vensterimplementatie. Ik wil de z-index van de modale overlay zo hoog mogelijk maken, zodat de advertentie er niet bovenop wordt weergegeven. Is er een limiet aan z-indexwaarden? Ik weet zeker dat als er iets is, dit per browser varieert. Iedereen weet?


18
2017-10-22 22:20


oorsprong


antwoorden:


Onthoud dat z-index werkt niet globaal, maar alleen binnen een 'stacking-context' (die moeilijk verteerbaar is) definitie in CSS) en als de advertentie zijn eigen stackcontext heeft, dan z-index waarden die u elders hebt ingesteld, hebben hier mogelijk geen enkele invloed op.

Maar waarschijnlijker is het een kwestie van "windowed" Flash (object zonder wmode=transparent attribuut), welke browsers bovenop alles renderen, alsof het een venster was boven het browservenster. In dat geval z-index Helpt helemaal niet. U moet ad [-provider] forceren om te gebruiken wmode=transparent of gebruik een aantal gekke hacks met iframes.


13
2017-10-22 22:35



De maximale zIndex-waarde die door de meeste browsers wordt ondersteund, is 2147483647 (2 ^ 31-1), maar Opera 9.2 accepteert geen waarden groter dan 2147483583; Ze hebben dit opgelost in versie 9.5.


18
2018-03-06 07:34



Niet echt, maar je zou de natuurlijke beperkingen van een systeem kunnen overwegen, zoals een int bereik. ID kaart waarschijnlijk houd het onder 32.767. Ik heb dat absoluut overtroffen in javascript terwijl ik aan een soortgelijk probleem werkte en ik ondervond geen problemen op de grote browsers en platforms waar ik me destijds zorgen over maakte.

In het geval van advertenties en overlays van derden, en ervoor zorgen dat wmode = "transparent" op de flash-embed is een veel voorkomend probleem langs dezelfde lijnen. Het is ook vermeldenswaard dat IE een bug heeft met het stapelen van z-indexen, dus als je geen succes ziet, zorg er dan voor dat je niet met je hoofd tegen de muur slaat *.

Ik hou er altijd van om een ​​soort van te houden conventieen gebruik geen willekeurige cijfers. Bijvoorbeeld, misschien alles in mijn css valt tussen 0 en 10. Misschien gebeurt dhtml-dingen in de 100-waarden, met een zinvolle z-index voor elke gegeven module.

*Kanttekening: De IE-bug, om specifiek te zijn, is dat IE een nieuw exemplaar van de documentstroom beschouwt als een nieuwe stacking-context voor de z-index. U moet ervoor zorgen dat uw z-indexen niet verloren gaan in de DOM-hiërarchie wanneer een onderliggende knooppunt dat normaal uw z-index zou erven, zijn eigen positioneringscontext wordt gerenderd.


10
2017-10-22 22:22



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

Theoretisch zou de eigenschap z-index onbeperkt moeten zijn, of tenminste binnen een int-type bereik, afhankelijk van OS en browser. Om bugs in de browser te voorkomen, moet u echter uw z-indexwaarden beperken tot +/- 32767.


3