Rumah > hujung hadapan web > tutorial css > Bagaimana untuk Menyasarkan anak ke-nth Merentasi Pelbagai Ibu Bapa dalam CSS?

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

Barbara Streisand
Lepaskan: 2024-10-23 22:01:02
asal
557 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!

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