Bagaimana untuk Menyasarkan anak ke-nth Merentasi Pelbagai Ibu Bapa dalam CSS?

Barbara Streisand
Lepaskan: 2024-10-23 22:01:02
asal
401 orang telah melayarinya

How to Target nth-child Across Multiple Parents in CSS?

CSS: Menyasarkan anak ke-nth Merentasi Pelbagai Ibu Bapa

Masalah

Pertimbangkan struktur HTML berikut:

<code class="html"><div class="foo">
  <ul>
    <li>one</li>
    <li>two</li>
  </ul>
  <ul>
    <li>three</li>
  </ul>
  <ul>
    <li>four</li>
  </ul>
</div></code>
Salin selepas log masuk

The matlamat adalah untuk menggayakan item senarai "satu" dan "tiga" dalam warna merah. Walau bagaimanapun, menggunakan pemilih CSS:

<code class="css">.foo li:nth-child(1),
.foo li:nth-child(3)</code>
Salin selepas log masuk

menggayakan anak pertama setiap ul sebaliknya.

Penyelesaian

Pendekatan CSS Sahaja:

Malangnya, tidak mungkin untuk memilih anak ke-nth merentas berbilang ibu bapa menggunakan CSS sahaja. Baik :nth-child() mahupun adik beradik combinator tidak membenarkan pilihan sedemikian.

Javascript atau Manipulasi DOM:

Untuk mencapai penyasaran sedemikian, anda boleh menggunakan Javascript atau DOM teknik manipulasi. Contohnya, menggunakan jQuery:

<code class="javascript">$('.foo li:eq(0), .foo li:eq(2)').css('color', 'red');</code>
Salin selepas log masuk

Pemarkahan Kelas atau ID:

Sebagai alternatif, anda boleh menandai item senarai sasaran secara eksplisit dengan kelas atau ID. Contohnya:

<code class="html"><div class="foo">
  <ul>
    <li class="target">one</li>
    <li>two</li>
  </ul>
  <ul>
    <li class="target">three</li>
  </ul>
  <ul>
    <li>four</li>
  </ul>
</div></code>
Salin selepas log masuk

Kemudian, gaya menggunakan kelas atau ID yang ditanda:

<code class="css">.foo .target {
  color: red;
}</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menyasarkan anak ke-nth Merentasi Pelbagai Ibu Bapa dalam CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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!