Rumah > hujung hadapan web > tutorial css > Mengapa Z-Index Tidak Berfungsi Seperti Yang Dijangkakan dengan Kedudukan Tetap?

Mengapa Z-Index Tidak Berfungsi Seperti Yang Dijangkakan dengan Kedudukan Tetap?

Mary-Kate Olsen
Lepaskan: 2024-12-23 15:43:11
asal
904 orang telah melayarinya

Why Doesn't Z-Index Work as Expected with Fixed Positioning?

z-index Tidak Berfungsi dengan Kedudukan Tetap

Dalam susun atur halaman, z-index menentukan susunan susunan elemen pada halaman web, dengan nilai yang lebih tinggi muncul di atas. Walau bagaimanapun, apabila sesuatu elemen diletakkan tetap, nampaknya bertentangan dengan gerak hati, ia boleh menjadi sukar untuk meletakkannya di belakang elemen kedudukan statik menggunakan indeks-z.

Contoh

Pertimbangkan kod HTML dan CSS berikut:

<div>
Salin selepas log masuk
#over {
  width: 600px;
  z-index: 10;
}

#under {
  position: fixed;
  top: 5px;
  width: 420px;
  left: 20px;
  border: 1px solid;
  height: 10%;
  background: #fff;
  z-index: 1;
}
Salin selepas log masuk

Seperti yang terbukti dalam contoh, walaupun lebih tinggi nilai indeks-z diberikan kepada #over, elemen kedudukan tetap #under kekal di atas.

Penjelasan

Tingkah laku mengelirukan timbul daripada perbezaan yang wujud antara statik dan tetap kedudukan.

  • Kedudukan statik meninggalkan unsur-unsur tidak terjejas oleh indeks-z, kerana ia terletak pada nilai biasa aliran dokumen.
  • Kedudukan tetap, sebaliknya, mengalih keluar elemen daripada aliran biasa dan meletakkannya berbanding dengan port pandangan (skrin pengguna).

Dalam konteks ini , indeks-z hanya menentukan susunan susunan elemen tetap berbanding tetap yang lain elemen.

Penyelesaian

Untuk membetulkan isu ini, tambahkan kedudukan: berbanding dengan elemen kedudukan statik. Ini mencipta konteks tindanan baharu untuk #over, membenarkan z-index menentukan kedudukannya berbanding konteks yang baru dibuat:

#over {
  width: 600px;
  z-index: 10;
  position: relative;
}

#under {
  position: fixed;
  top: 14px;
  width: 415px;
  left: 53px;
  border: 1px solid;
  height: 10%;
  background: #f0f;
  z-index: 1;
}
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Z-Index Tidak Berfungsi Seperti Yang Dijangkakan dengan Kedudukan Tetap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan