Saya memiliki div di halaman HTML saya. Saya menunjukkan div ini berdasarkan pada beberapa kondisi, tetapi div tersebut ditampilkan di belakang elemen HTML di mana saya mengarahkan kursor mouse.
Saya telah mencoba semua nilai untuk z-index dari 0 - 999999. Adakah yang bisa memberitahu saya mengapa ini terjadi?
Apakah ada nilai minimum atau maksimum properti Z-INDEX dari CSS?
.divClass {
position: absolute;
left: 25px;
top: 25px;
width: 320px;
height: 300px;
z-index: 1000;
}
<table cellspacing="0" cellpadding="0" width="100%">
<tr>
<td>
<asp:HyperLink ID="lnkProgram" runat="server"></asp:HyperLink>
</td>
</tr>
<tr>
<td>
<div class="divClass">
Some Data
</div>
</td>
</tr>
</table>
Saya menunjukkan dan menyembunyikan div dengan .divClass
onclick <asp:hyperlink>
menggunakan jQuery.
display: none
dalam CSS-nya?Jawaban:
sumber
2,147,483,647 = 2^31 - 1
,. Ini adalah prima Mersenne.http://www.w3.org/TR/CSS21/visuren.html#z-index
http://www.w3.org/TR/CSS21/syndata.html#numbers
Jadi pada dasarnya tidak ada batasan untuk nilai indeks-z dalam standar CSS, tapi saya kira sebagian besar browser membatasi untuk menandatangani nilai 32-bit (−2147483648 hingga +2147483647) dalam praktiknya (64 akan sedikit di atas, dan itu tidak masuk akal untuk menggunakan sesuatu yang kurang dari 32 bit hari ini)
sumber
log base 2 (lg) = lg(16777271)
16777216
.16777271
dengan demikian akan membutuhkan 25 bit.Tes saya menunjukkan bahwa itu
z-index: 2147483647
adalah nilai maksimum, diuji pada FF 3.0.1 untuk OS X. Saya menemukan bug integer overflow: jika Anda mengetikz-index: 2147483648
(yaitu 2147483647 +1) elemen hanya berjalan di belakang semua elemen lainnya. Setidaknya peramban tidak mogok.Dan pelajaran yang harus dipetik adalah Anda harus berhati-hati memasukkan nilai yang terlalu besar untuk
z-index
properti karena mereka membungkus.sumber
Nilai minimum Z-index adalah 0 ; nilai maksimum tergantung pada jenis browser.
sumber
Itu tergantung pada browser (meskipun versi terbaru dari semua browser harus maks. Di 2147483638), seperti halnya reaksi browser ketika maksimum terlampaui.
http://www.puidokas.com/max-z-index/
sumber
Ini nilai maksimum integer 32 bit: 2147483647
Lihat juga dokumen: https://www.w3.org/TR/CSS22/visuren.html#z-index (angka negatif diperbolehkan)
sumber
Dari pengalaman, saya pikir maksimum yang benar
z-index
adalah 2147483638.sumber
Indeks-Z hanya berfungsi untuk elemen yang memiliki
position: relative;
atauposition: absolute;
menerapkannya. Jika bukan itu masalahnya, kita perlu melihat halaman contoh untuk lebih membantu.EDIT: Dokter yang baik telah memberikan penjelasan sepenuhnya tetapi versi cepatnya adalah bahwa minimum adalah 0 karena itu tidak bisa menjadi angka negatif dan maksimum - yah, Anda tidak akan pernah benar-benar perlu pergi di atas 10 untuk sebagian besar desain.
sumber
Saya telah menemukan bahwa sering jika indeks-z tidak berfungsi karena induk / saudara kandungnya tidak memiliki indeks-z yang ditentukan.
Jadi, jika Anda memiliki:
item # 3, atau bahkan # 4, mungkin memperebutkan # 2 untuk ruang klik / arahkan, meskipun jika Anda menetapkan # 1 ke z-indeks 0, saudara kandung yang z-index menempatkan mereka di tumpukan independen sekarang berada di tumpukan yang sama dan akan z-indeks dengan benar.
Ini memiliki deskripsi yang bermanfaat dan cukup manusiawi: http://foohack.com/2007/10/top-5-css-mistakes/
sumber
position: relative;
atau sesuatu seperti itu.Seorang pengguna di atas mengatakan "baik, Anda tidak akan pernah benar-benar perlu pergi di atas 10 untuk sebagian besar desain."
Bergantung pada proyek Anda, Anda hanya perlu z-indeks 0-1, atau z-indeks 0-10000. Anda sering harus bermain dalam angka yang lebih tinggi ... terutama jika Anda bekerja dengan pemirsa lightbox (9999 tampaknya menjadi standar dan jika Anda ingin melampaui indeks-z mereka, Anda harus melebihi itu!)
sumber
Meskipun
INT_MAX
mungkin merupakan taruhan yang paling aman, WebKit tampaknya menggunakan ganda secara internal dan dengan demikian memungkinkan angka yang sangat besar (dengan presisi tertentu).LLONG_MAX
mis. berfungsi dengan baik (setidaknya dalam 64-Bit Chromium dan WebkitGTK), tetapi akan dibulatkan menjadi 9223372036854776000.(Meskipun Anda harus mempertimbangkan dengan hati-hati apakah Anda benar- benar membutuhkan banyak indeks z ini ...).
sumber