Rumah > hujung hadapan web > tutorial css > Adakah CSS :not() Menyasarkan Elemen Keturunan Jauh secara Selektif?

Adakah CSS :not() Menyasarkan Elemen Keturunan Jauh secara Selektif?

Linda Hamilton
Lepaskan: 2024-12-06 18:58:16
asal
301 orang telah melayarinya

Does CSS :not() Selectively Target Distant Descendant Elements?

Bolehkah CSS :not() Menyasarkan Keturunan Jauh?

Css3 :not() pseudo-class bertujuan untuk mengecualikan elemen yang sepadan dengan pemilih yang ditentukan. Ia mempunyai sokongan terhad untuk menyasarkan keturunan jauh.

Pelaksanaan dan Sokongan

Pemilih :not() mempunyai pelaksanaan separa dalam penyemak imbas moden, tetapi sokongannya untuk menyasarkan keturunan jauh adalah terhad. Ia beroperasi terutamanya pada anak langsung sesuatu elemen.

Gelagat dengan Keturunan Jauh

Dalam contoh anda, pemilih :not(p) tidak menjejaskan , walaupun ia adalah keturunan

. Ini kerana :not() hanya menafikan pemilih anak segera. The
elemen sepadan dengan kriteria :not(p) dan warnanya ditetapkan kepada merah. Selepas itu,

elemen mewarisi warna ini daripada induknya

.

Gelagat yang Dijangka lwn. Gelagat Sebenar

Anda menjangkakan

elemen untuk kekal tidak terjejas oleh pemilih :not(), tetapi ia mewarisi perubahan warna. Ini bukan tingkah laku yang dimaksudkan untuk menyasarkan keturunan yang jauh.

Penyelesaian

Untuk menggayakan secara khusus hanya

elemen dalam

, anda harus menggunakan pemilih yang lebih langsung:

div p {
    color: black;
}
Salin selepas log masuk

Peningkatan dalam Pemilih CSS Tahap 4

Pemilih CSS Tahap 4 mencadangkan pelanjutan : not() untuk menerima pemilih kompleks dengan penggabung. Ini akan membolehkan anda menyasarkan keturunan jauh dengan fleksibiliti yang lebih besar. Setelah dilaksanakan, anda boleh menulis pemilih seperti:

p:not(div p) {
    color: red;
}
Salin selepas log masuk

Pemilih ini akan menyasarkan semua

unsur yang bukan keturunan langsung

.

Atas ialah kandungan terperinci Adakah CSS :not() Menyasarkan Elemen Keturunan Jauh secara Selektif?. 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