Rumah > hujung hadapan web > tutorial css > Mengapa Div Terpinggir Negatif Kelihatan Meluncur *Antara* Kandungan dan Latar Belakang Div Lain?

Mengapa Div Terpinggir Negatif Kelihatan Meluncur *Antara* Kandungan dan Latar Belakang Div Lain?

Susan Sarandon
Lepaskan: 2024-12-17 00:38:25
asal
296 orang telah melayarinya

Why Does a Negatively Margined Div Appear to Slide *Between* the Content and Background of Another Div?

Kandungan Bertindih Oleh Elemen Bertindih: Memahami Teka-teki

Pengenalan

Dalam konteks ini, kami mempunyai dua div tanpa sebarang penggayaan kompleks (warna latar belakang sahaja). Kami memanipulasi div kedua untuk bertindih dengan yang pertama dengan menggunakan margin atas negatif. Walau bagaimanapun, daripada melihat satu elemen bertindih sepenuhnya dengan yang lain, kami mendapati div kedua menggelongsor antara kandungan dan latar belakang div pertama, menunjukkan tingkah laku yang tidak dijangka.

Tempahan Lukisan

Untuk memahami tingkah laku ini, kita perlu menyelidiki selok-belok susunan lukisan dalam pelayar. Susunan lukisan untuk elemen dalam konteks tindanan mengikut urutan yang dipratakrifkan:

  1. Warna latar belakang elemen, walaupun ia elemen akar.
  2. Imej latar belakang elemen, walaupun jika ia adalah unsur akar.
  3. Kandungan elemen, seperti teks dan imej, dicat dari bawah ke atas.
  4. Latar belakang dan sempadan elemen kanak-kanak.

Menjelaskan Pertindihan

Dalam contoh kita, apabila div kedua bertindih dengan yang pertama , urutan lukisan berikut berlaku:

  1. Warna latar belakang div kedua dicat di atas latar belakang div pertama.
  2. Kandungan div pertama dilukis.
  3. Kandungan div kedua dilukis di atas kandungan div pertama.

Memandangkan kandungan div pertama dilukis sebelum latar belakang div kedua, teks nampaknya diletakkan di atas latar belakang hijau, mewujudkan ilusi yang div kedua sedang meluncur di antara mereka.

Menukar Gelagat

Walaupun susunan pengecatan lalai boleh membawa kepada situasi sedemikian, anda boleh mengubah suai tingkah laku dengan menetapkan kelegapan daripada elemen bertindih kepada nilai kurang daripada 1. Ini mencetuskan langkah pengecatan kelegapan sebelum langkah pengecatan kandungan, memastikan pertindihan latar belakang elemen muncul di bawah kandungannya.

Dalam contoh kami, menambahkan kelegapan: 0.9999 pada div kedua membawa kepada gelagat yang dijangkakan, di mana latar belakang hijau sepenuhnya meliputi kandungan div pertama.

Rujukan

Untuk penjelasan terperinci tentang pesanan cat CSS, rujuk kepada rasmi Dokumentasi W3C:

https://www.w3.org/TR/css-backgrounds-3/#box-painting

Atas ialah kandungan terperinci Mengapa Div Terpinggir Negatif Kelihatan Meluncur *Antara* Kandungan dan Latar Belakang Div Lain?. 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