2013-01-20 21 views
5

bu DOM düşünün ebeveyninin kardeş batmak olun:Z-endeksi: eleman

<header> 
    <h1> header </h1> 
    <!-- other elements --> 
    <nav> 
     nav 
    </nav> 
</header> 

<div> 
    content 
</div> 

başlık ve nav Hem fixed olarak konumlandırılmış. İçerik div, relative olarak konumlandırıldı. I (üstten alta doğru) bu sırayla, Z-endeksine sahip, bir yığın oluşturmak için gereken:

  • başlık *: değildir (NAV)
  • içeriği
  • gez

En altta nav koyuyor (başka bir deyişle, ebeveyninin kardeşi altında). Başlığın tüm çocuklarının ya üstte ya da kardeşinin altında gitmesi gerektiğini düşünüyorum ... bu doğru mu? Öyleyse, bu durum için bir çözüm var mı?

cevap

5

Yalnızca "konumlandırılmış" olan "position: absolute veya position: fixed veya position: relative" gibi içerikler z-index numaralı telefona saygı gösterecektir. HTML yapılandırılmış olduğu için, size (o ebeveyn vs bambaşka Z endeksi olamaz) üst/alt ayrıca böylece çocuk ebeveyn olmak zorunda saygı duyulur, çünkü soran şeyi yapamaz . İstediğinizi yapmak için, nav'u header'dan koparmanız ve daha sonra bunların her birinin kendi başına z-index, içeriğinin varsayılan sıfır z-endeksinin altında ve üstünde olması gerekir.

+0

Ben o noktaya gelmek olmazdı umuyordum ama başlığının dışarı nav kırarak sona erdi. mutlak veya pozisyon: pozisyondur – dcastro

+0

** Sadece içeriği. z-index saygı göstereceğiz sabit ** Bu çok yanlış. Burada her şeyden önce, z-endeksi, sadece yer bağlantı elemanları üzerinde çalışan https://philipwalton.com/articles/what-no-one-told-you-about-z-index/ bir quot ** olduğu. Belirtilmemiş bir öğe üzerinde bir z-dizini ayarlamaya çalışırsanız, hiçbir şey yapmayacaktır. İkinci olarak, z-endeksi değerleri yığılan bağlamlar yaratabilir ve şimdi aniden basit gibi görünen sadece çok daha kötüleşti ** Yani '' 'pozisyon . Relative''' da çalışıyor. Belki başkaları da olabilir. – atilkan

+0

@atilkan - Cevabım için 'position: relative' özelliğini ekledim. – jfriend00

0

Bunun için tek geçici çözüm, DOM düzeniniz ile negatif z-dizin değerleri kullanmaktır. Olumsuz değer kullanmak için önerilmediği gibi, olumsuz değeri kullanmak kesinlikle tavsiye edilmez.

Daha iyi bir çözüm, DOM'nızı yeniden birleştirici yapmak olabilir. this'u faydalı bulabilirsiniz. Z-endeksi özelliğini kullanmanın önerilen yollarını açıklar.

Bu yardımcı olur umarım!