Rumah > hujung hadapan web > tutorial css > Cara Menggayakan Kanak-Kanak Tertentu Merentas Berbilang Ibu Bapa dalam CSS

Cara Menggayakan Kanak-Kanak Tertentu Merentas Berbilang Ibu Bapa dalam CSS

DDD
Lepaskan: 2024-10-24 00:09:29
asal
311 orang telah melayarinya

How to Style Specific nth-Children Across Multiple Parents in CSS

Menggayakan Kanak-Kanak Ke-n Tertentu Merentas Berbilang Ibu Bapa

Apabila menggayakan elemen bersarang menggunakan pemilih anak ke-n, adalah penting untuk ambil perhatian bahawa pemilih beroperasi dalam konteks induk tunggal. Ini boleh membawa kepada cabaran apabila menyasarkan elemen kanak-kanak tertentu merentas berbilang ibu bapa.

Isunya:

Pertimbangkan markup berikut:

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

The matlamatnya adalah untuk menggayakan elemen li pertama dan ketiga dalam .foo. Menggunakan CSS berikut:

.foo li:nth-child(1),
.foo li:nth-child(3)
{
    color: red;
}
Salin selepas log masuk

Pendekatan ini tidak akan berfungsi kerana anak ke-n memilih anak pertama dan ketiga setiap ul.

Penyelesaian:

Menggunakan CSS sahaja, tidak mungkin untuk menyasarkan anak ke-nth merentas berbilang ibu bapa. Walau bagaimanapun, terdapat penyelesaian alternatif:

  • JavaScript: Perpustakaan seperti jQuery memudahkan untuk memanipulasi elemen DOM dan memilih yang khusus, seperti $('.foo li:eq( 0), .foo li:eq(2)').
  • Penanda Eksplisit: Tambahkan kelas atau ID pada elemen li pertama dan ketiga secara eksplisit, seperti:
<div class="foo">
    <ul>
        <li class="first">one</li>
        <li>two</li>
    </ul>
    <ul>
        <li class="third">three</li>
    </ul>
    <ul>
        <li>four</li>
    </ul>
</div>
Salin selepas log masuk

Kemudian, gayakannya menggunakan kelas yang baru ditambah:

.foo li.first,
.foo li.third
{
    color: red;
}
Salin selepas log masuk

Atas ialah kandungan terperinci Cara Menggayakan Kanak-Kanak Tertentu Merentas Berbilang 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan