Anonim

Ilang buwan na ang nakalilipas ay naglunsad ako ng isang bagong site at nakakuha ng isang reklamo na ang isang leaderboard ad ay lumilitaw sa itaas ng isang menu ng pagbagsak na mayroon ako sa pahina. Napakagaan, sinuri ko ang css ng ad, nakita na mayroon itong isang z-index na 999 at itinaas ang z-index sa menu sa 1, 000. Malutas ang problema. Parehong problema muli pagkalipas ng ilang linggo, umakyat sa 10, 000. Muli ngayon kailangan kong suriin ang isa pang ad na nagdudulot ng parehong problema. Nagkaroon ito ng isang index ng 1 milyon. Paano nakakainis.

Na nagtataka ako, kung ano ang pinakamataas na halaga na maaari kong itakda ang isang z-index. Ang pagtingin sa iba't ibang dokumentasyon ng CSS, hindi lumilitaw na isang tinukoy na maximum na halaga. Ang sagot, sa Firefox, IE, at Chrome ay:

2147483647

Iyon ang maximum na naka-sign na halaga ng isang 32 bit integer. Teknikal, nais kong isipin na ang limitasyong ito ay nagmula sa programming language na ginawa ng browser. Tiyak kong mayroong ilang mas matandang browser na kung saan ang pagtatakda nito sa halagang ito ay maaaring magpahinga. Ang mga kagiliw-giliw na bagay bagaman. Kaya, kung nais mong tiyakin na ang iyong elemento ay ganap na 100% na sigurado sa itaas, itakda ito sa 2147483647. Malutas ang problema. Sa katotohanan gayunpaman, natagpuan ko itong nakakainis na ang isang ad ay itinakda ito sa isang mataas na bilang. Isinasaalang-alang ang anumang naibigay na pahina, magkakaroon ng isang napaka-limitadong halaga ng mga layer, ang pagtatakda nito sa mas maliit na bilang ay dapat gawin ang trick.

Pinakamataas na halaga ng css z-index