Rumah >hujung hadapan web >tutorial css >Mengapa `DIV.section DIV:first-child` Tidak Menggayakan Anak Langsung Pertama?

Mengapa `DIV.section DIV:first-child` Tidak Menggayakan Anak Langsung Pertama?

Linda Hamilton
Linda Hamiltonasal
2024-12-18 22:39:20949semak imbas

Why Doesn't `DIV.section DIV:first-child` Only Style the First Direct Child?

Kekhususan Pemilih Kanak-kanak Langsung

Apabila menggunakan CSS pada elemen HTML, adalah penting untuk memahami kekhususan pemilih. Dalam senario anda, pemilih DIV.section DIV:first-child nampaknya menggayakan kedua-dua div "sub kandungan 1" dan "header".

Walau bagaimanapun, pemilih bertujuan untuk memadankan hanya anak langsung pertama daripada div dengan kelas "bahagian". Mari kita pecahkan mengapa pemilih asal tidak berfungsi seperti yang diharapkan.

Memahami Keturunan Langsung vs. Anak Langsung

Kelas pseudo anak pertama memilih anak pertama daripada sesuatu unsur. Walau bagaimanapun, dalam kes anda, anda menggunakannya pada DIV.section DIV, yang bermaksud "pilih semua div yang merupakan keturunan div dengan 'bahagian' kelas". Ini termasuk kedua-dua kanak-kanak langsung dan kanak-kanak bersarang.

Menggunakan Pemilih Keturunan Langsung

Untuk menyasarkan hanya anak langsung pertama div dengan "bahagian" kelas, anda hendaklah menggunakan pemilih keturunan langsung (>). Operator ini memadankan elemen yang merupakan anak terdekat kepada ibu bapa tertentu. Pemilih yang diubah suai ialah:

div.section > div:first-child

Pemilih ini akan menggayakan hanya div "pengepala" dengan betul, kerana ia adalah anak langsung pertama div dengan "bahagian" kelas.

Isu Penyemak Imbas Warisan

Ambil perhatian bahawa pemilih keturunan langsung tidak disokong dalam yang lebih lama penyemak imbas, seperti Internet Explorer 6. Jika anda perlu menyokong penyemak imbas sedemikian, anda mungkin perlu menggunakan kaedah alternatif, seperti menambah kelas pada div kanak-kanak.

Atas ialah kandungan terperinci Mengapa `DIV.section DIV:first-child` Tidak Menggayakan Anak Langsung Pertama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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