For et par måneder siden lancerede jeg et nyt websted og klagede over, at en leaderboardannonce blev vist over en dropdown-menu, som jeg havde på siden. Enkelt nok, jeg inspicerede css af annoncen, så at den havde en z-indeks på 999 og oped z-indekset på menuen til 1.000. Problem løst. Samme problem igen et par uger senere, upped det til 10.000. Igen i dag måtte jeg inspicere en anden annonce, der forårsagede det samme problem. Det havde et indeks på 1 million. Hvor irriterende.
Det fik mig til at tænke over, hvad er den maksimale værdi, jeg kunne sætte en z-indeks til. Idet der ses i forskellige CSS-dokumentation, forekom det ikke at være en angiven maksimumsværdi. Svaret i Firefox, IE og Chrome er:
2147483647
Det er den maksimale signerede værdi af et 32 bit heltal. Teknisk set kan jeg forestille mig, at denne begrænsning kommer fra det programmeringssprog, som browseren blev lavet i. Jeg er sikker på, at der er nogle ældre browsere, hvor indstillingen til denne værdi kan gøre noget pause. Interessante ting dog. Så hvis du vil sikre dig, at dit element er absolut 100% sikkert på toppen, skal du sætte det på 2147483647. Problemet løst. I virkeligheden fandt jeg det dog meget irriterende, at en annonce havde sat det til et så højt antal. I betragtning af en given side vil der være en meget begrænset mængde lag, og det skal være et meget mindre antal, der skal gøre det.