Struktur dokumen HTML adalah sama dengan pokok keluarga. Dalam keluarga anda, anda mempunyai ibu bapa dan orang lain yang datang ke hadapan anda. Inilah nenek moyangmu. Anak-anak dan orang-orang yang mengikuti kamu di atas pokok itu adalah keturunanmu. HTML berfungsi dengan cara yang sama. Unsur-unsur yang berada di dalam unsur-unsur lain adalah keturunan mereka. Sebagai contoh, kerana hampir setiap elemen HTML berada di dalam tag
, mereka akan menjadi keturunan elemen itu. Hubungan ini penting untuk difahami apabila anda mula bekerja dengan CSS dan perlu menyasarkan elemen tertentu untuk menggunakan gaya visual.Pemilih Keturunan CSS
Pemilih keturunan CSS terpakai kepada unsur-unsur yang berada di dalam elemen lain (atau lebih tepat dinyatakan, unsur yang merupakan keturunan unsur lain). Sebagai contoh, senarai tidak teratur mempunyai tag dengan tanda sebagai keturunan. Mari kita gunakan HTML berikut sebagai contoh:
- ini adalah pautan li> ul>
Tag LI adalah keturunan tag UL. Tag A adalah keturunan dari tag LI (anak keturunan) dan UL (keturunan cucu). Jika anda berfikir tentang berfikir tentang hal ini menggunakan contoh pokok keluarga,
- akan menjadi ibu bapa,
- akan menjadi anak itu elemen, dan adalah anak
- dan cucu yang
- .
- ). Semua pautan lain pada halaman yang bukan keturunan daripada item senarai tidak akan mendapat gaya ini.
Jadi, bagaimanakah anda mensasarkan elemen tertentu dalam laman web menggunakan pemilih keturunan ini? Pertama, anda perlu menentukan pemilih keturunan dengan menggunakan dua (atau lebih) pemilih jenis yang dipisahkan oleh ruang.
li a {text-decoration: none; }Dalam contoh itu, gaya hanya akan digunakan pada elemen pautan () yang merupakan keturunan elemen item senarai (
Satu perkara penting untuk diingat adalah bahawa tidak kira berapa banyak tag yang ada di antara tag yang mungkin anda gunakan dalam pemilih keturunan anda. Jika elemen kedua dilampirkan di mana-mana dalam elemen pertama, ia akan dipilih sebagai keturunan.
Sekiranya anda ingin memilih semua sauh yang diturunkan dari elemen ul, anda akan menulis:
ul a {text-decoration: none; }Sekarang, gaya-gaya ini akan digunakan untuk mana-mana pautan yang merupakan keturunan dari item senarai. Anda juga boleh menulis pemilih ini
ul li a {text-decoration: none; }Ini adalah pemilih keturunan yang menggunakan lebih daripada dua pemilih jenis. Dalam kes ini, ini akan digunakan untuk pautan yang berada di dalam senarai item dan juga di dalam senarai yang tidak disusun.
Menggunakan Pemilih Kelas dan Pengikut ID
Pemilihan yang anda turunkan dari tidak perlu selalu menjadi keturunan. Sebagai contoh, bayangkan anda mempunyai kawasan tapak (seperti bahagian) dengan atribut ID "papan iklan". Anda boleh menubuhkan pemilih keturunan daripada ID tersebut:
#billboard ul {background-color: #ccc; }Ini akan menyusun senarai tidak teratur yang merupakan keturunan unsur dengan ID "papan iklan". Anda boleh melakukan perkara yang sama untuk nilai kelas.
div.billboard ul {background-color: #ccc; }Ini menganggap bahawa bahagian mempunyai nilai kelas "papan iklan". CSS di atas akan menyusun elemen
- di dalam mana-mana bahagian yang mempunyai nilai kelas ini.
Anda boleh menjadi sangat berat dan tegas dengan pemilih keturunan. Sebagai contoh, jika anda menggunakan Dreamweaver untuk menulis kod HTML anda, terdapat tetapan apabila anda menambah peraturan CSS baru yang akan mencipta pemilih secara automatik berdasarkan penempatan kursor anda pada halaman itu. Apa yang dilakukan oleh Dreamweaver dalam keadaan ini adalah mencipta pemilih keturunan yang berani dan panjang. Keistimewaan yang banyak tidak perlu untuk CSS anda berfungsi. Apa yang anda mahu lakukan ialah mencari keseimbangan antara pemilih keturunan yang cukup spesifik supaya anda boleh menguji elemen-elemen yang anda perlukan (tanpa gaya yang anda tidak mahu mempengaruhi) tanpa peraturan CSS yang mempunyai pemilihan yang terlalu banyak besar.
- dan cucu yang
- akan menjadi anak itu elemen, dan adalah anak