Mengapakah pemilih anak ke-n saya tidak berfungsi pada elemen bersarang?

Linda Hamilton
Lepaskan: 2024-10-28 11:04:02
asal
800 orang telah melayarinya

 Why is my nth-child selector not working on nested elements?

Mengapa Pemilih nth-child Tidak Berfungsi?

Anda mungkin mengalami isu ini semasa menggunakan pemilih anak ke-n untuk tujuan penggayaan. Walaupun menggunakan pemilih ini untuk menambah imej latar belakang pada ikon sosial yang berbeza, anda dapati bahawa semua ikon memaparkan rupa yang sama. Ini menandakan ada sesuatu yang tidak kena dalam kod anda.

Menyelidiki Isu

Pemilih anak ke-n direka bentuk untuk menyasarkan elemen tertentu berdasarkan kedudukannya di kalangan unsur adik beradik. Walau bagaimanapun, dalam kod anda, pemilih:

#social-links div:nth-child(1),
#social-links div:nth-child(2),
#social-links div:nth-child(3),
#social-links div:nth-child(4),
Salin selepas log masuk

menyasarkan elemen div yang merupakan anak kepada elemen #social-links. Walau bagaimanapun, elemen div ini sentiasa merupakan anak tunggal bagi elemen anchor (a) masing-masing. Oleh itu, pemilih anak ke-n tidak dapat membezakan antara mereka kerana mereka semua adalah anak pertama dan satu-satunya elemen utama mereka.

Pendekatan yang Betul

Untuk membetulkan isu ini, anda perlu melaraskan pemilih anak ke-n untuk menyasarkan elemen utama dan bukannya elemen div. Dengan berbuat demikian, anda boleh menentukan elemen penambat yang harus menerima imej latar belakang tertentu:

#social-links a:nth-child(1) div { 
   background-image: url('path/to/image1.svg'); 
}
#social-links a:nth-child(2) div { 
   background-image: url('path/to/image2.svg'); 
}
#social-links a:nth-child(3) div { 
   background-image: url('path/to/image3.svg'); 
}
#social-links a:nth-child(4) div { 
   background-image: url('path/to/image4.svg'); 
}
Salin selepas log masuk

Struktur kod yang diubah suai ini memastikan setiap elemen penambat menerima imej latar belakang yang dimaksudkan berdasarkan kedudukannya di antara elemen penambat adik beradik.

Atas ialah kandungan terperinci Mengapakah pemilih anak ke-n saya tidak berfungsi pada elemen bersarang?. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!