Laman » Pengekodan » A Look Into CSS3 First-Of-Type Structural Selector

    A Look Into CSS3 First-Of-Type Structural Selector

    Artikel ini adalah sebahagian daripada kami "Siri Tutorial HTML5 / CSS3" - khusus untuk membantu menjadikan anda pereka dan / atau pemaju yang lebih baik. Tekan di sini untuk melihat lebih banyak artikel dari siri yang sama.

    Satu perkara yang saya sayangi tentang CSS3 ialah penambahan baru pemilih yang membolehkan kami menyasarkan unsur-unsur secara khusus tanpa bergantung kepada kelas, ID atau atribut unsur lain, dan satu yang akan kita pelajari di sini ialah pemilih berikut, : first-of-type.

    The : first-of-type pemilih akan menyasarkan anak pertama elemen yang ditentukan, sebagai contoh, coretan di bawah akan menyasarkan yang pertama h2 di laman web.

     h2: deklarasi gaya / * first-of-type * / 

    The : first-of-type juga sama dengan : nth-of-type (1), jadi bukannya memilih sahaja pertama jenis ini, kita boleh memilih lagi yang kedua, ketiga dan sebagainya. Coretan berikut akan menyasarkan kedua h2 elemen di laman web.

     h2: nth-of-type (2) / * style declaration * / 

    : first-of-type” vs. “: anak pertama”

    Ia mungkin kelihatan seperti kedua-dua pemilih melakukan perkara yang sama, tetapi itu bukan perkara yang sama. Mari lihat demonstrasi berikut:

    Katakan kita mempunyai lima elemen perenggan yang dibungkus dalam a div, seperti ini:

     

    Perenggan 1

    Perenggan 2

    Perenggan 3

    Perenggan 4

    Perenggan 5

    Sekarang, kami ingin memilih perenggan pertama menggunakan : anak pertama pemilih.

     p: anak pertama padding: 5px 10px; jejari sempadan: 2px; latar belakang: # 8960a7; warna: #fff; sempadan: 1px pepejal # 5b456a;  

    Dan seperti yang telah kami jangkakan, perenggan pertama berjaya dipilih.

    • : Demo kanak-kanak pertama

    Walau bagaimanapun, apabila kita tambah unsur yang berbeza sebelum ini perenggan pertama, katakanlah h1, seperti coretan berikut:

     

    Tajuk 1

    Perenggan 1

    Perenggan 2

    Perenggan 3

    Perenggan 4

    Perenggan 5

    perenggan pertama tidak akan dipilih, sebagai anak pertama di dalam div adalah tidak lagi perenggan, tetapi sekarang h1.

    Jadi, ini adalah keadaan di mana : first-of-type pemilih datang untuk menyelesaikan masalah ini.

     p: first-of-type padding: 5px 10px; jejari sempadan: 2px; latar belakang: # a8b700; warna: #fff; sempadan: 1px pepejal # 597500;  

    • : Demo pertama-jenis

    The “Terakhir” Pemilih

    Di mana ada “pertama”, maka akan ada juga “lepas”.

    Sebaliknya kedua-dua pemilih yang telah dibincangkan di atas adalah dua pemilih berikut; yang :anak bongsu dan juga : last-of-type. Mereka pada dasarnya adalah sama dengan dua di atas, kecuali mereka menargetkan anak terakhir elemen yang ditentukan.

    Sebagai contoh, coretan ini di bawah akan menyasarkan perenggan terakhir di dalam div tersebut.

     p: kanak-kanak lepas padding: 5px 10px; jejari sempadan: 2px; latar belakang: # 8960a7; warna: #fff; sempadan: 1px pepejal # 5b456a;  
    • : Demo kanak-kanak lepas

    Dan coretan ini juga akan menargetkan perenggan terakhir dalam keadaan yang sama seperti yang telah dibincangkan di atas; kali ini

    diikuti secara langsung oleh unsur yang berbeza.

     p: last-of-type padding: 5px 10px; jejari sempadan: 2px; latar belakang: # a8b700; warna: #fff; sempadan: 1px pepejal # 597500;  
    • : Demo lepas jenis

    The Selectivizr

    Seperti mana-mana ciri baru lain dalam CSS3, pemilih ini tidak disokong dalam penyemak imbas lama, terutamanya Internet Explorer 6 hingga 8, dengan pengecualian untuk : anak pertama pemilih, kerana ia telah ditambahkan sejak CSS2.1. Saudara saudaranya :anak bongsu hanya ditambahkan dalam CSS3.

    Jadi, jika semua pemilih yang telah kami sebutkan di sini sangat diperlukan untuk webite anda, anda boleh menggunakan Perpustakaan JavaScript yang dipanggil Selectivizr untuk mencontohi fungsi pemilih CSS3 tersebut.

    Selectivizr bergantung kepada Perpustakaan JavaScript yang lain untuk berfungsi, seperti jQuery, Dojo, Prototaip dan MooTools; dan melihat dari jadual perbandingan di laman web rasmi, MooTools nampaknya dapat mengendalikan semua pemilih.

    Jadi, mari masukkannya bersama dengan Selectivizr, seperti berikut:

      

    Komen bersyarat di atas akan memastikan bahawa perpustakaan-perpustakaan ini hanya akan dimuatkan di Internet Explorer 8 dan di bawah.

    Akhirnya, anda boleh melihat demo dari pautan berikut dan kini kini berfungsi baik dalam penyemak imbas moden dan lama (IE8 dan di bawah). Anda juga boleh memuat turun fail sumber untuk pemeriksaan lanjut. Nikmati.

    • Demo
    • Muat turun Sumber