- mereka nampaknya tidak mempunyai banyak kes penggunaan.
- kod untuk menulisnya agak kompleks.
Takeaways Key
- Kaunter CSS menyediakan penomboran dinamik dalam CSS, yang membolehkan penomboran item bukan berturut-turut, yang boleh disusun semula tanpa perlu menyesuaikan penomboran secara manual. Ini dicapai melalui penggunaan elemen pseudo dan CSS khusus.
- Walaupun kerumitan awal, kaunter CSS tidak sukar untuk mengekalkan apabila konsep unsur-unsur pseudo CSS difahami. Walaupun kandungan yang dihasilkan mungkin mempunyai kebimbangan aksesibiliti, kebanyakan penyemak imbas menyokongnya dan diiktiraf oleh pembaca skrin.
- Kes penggunaan praktikal untuk kaunter CSS dilihat dalam spesifikasi tahap 4 pemilih W3C, di mana ia digunakan untuk nombor "isu" dan "contoh" yang diselingi dalam kandungan. Ini membolehkan penambahan mudah, penyingkiran, atau menyusun semula item sambil mengemas kini penomboran secara automatik.
kaunter CSS membolehkan anda untuk nombor item dalam CSS menggunakan penomboran dinamik, sama seperti bagaimana senarai yang diperintahkan berfungsi. Tetapi kaunter CSS agak berbeza. Ciri ini menggunakan elemen pseudo yang digabungkan dengan beberapa CSS khusus balas untuk menambah/mempersiapkan "kiraan" dinamik kepada satu set elemen yang ditentukan.
Berikut adalah contoh kod, sama seperti yang saya akan gunakan dalam demo pada akhir artikel ini:
<span><span>.container</span> { </span> <span>counter-reset: issues 0; </span><span>} </span> <span><span>.issue:before</span> { </span> <span>counter-increment: issues 1; </span> <span>content: "Issue " counter(issues, decimal); </span> <span>display: block; </span><span>}</span>Blok pengisytiharan pertama mentakrifkan skop kiraan. Apa ini bermakna kaunter saya akan bertambah hanya dalam unsur -unsur yang mempunyai kelas .container. Saya telah memilih pengecam tersuai yang dipanggil "isu", yang diperlukan untuk menghubungkan bekas ke unsur -unsur yang dikira.
Blok Deklarasi Kedua menggunakan: Sebelum Pseudo-Element (saya boleh menggunakan alternatif: selepas, tetapi itu jarang berlaku di kaunter) dan harta kandungan untuk menyediakan kandungan yang ditakrifkan.
Sebagai sebahagian daripada nilai harta kandungan, saya menggunakan fungsi kaunter () bersama -sama dengan rentetan, sama dengan sesuatu yang mungkin dilakukan dalam JavaScript atau bahasa pengaturcaraan lain yang lebih tipikal. Fungsi kaunter () mengambil dua argumen: pengenal kaunter ditakrifkan lebih awal (dalam kes ini, "isu") dan gaya kaunter, yang boleh menjadi nilai yang digunakan untuk harta jenis gaya dalam senarai yang diperintahkan. Lalai adalah "perpuluhan", yang saya gunakan dalam contoh ini.
Jika anda masih keliru bagaimana kaunter berfungsi, mungkin infographic mini ini akan membantu:
Dan jika itu tidak mencukupi, berikut adalah beberapa sumber tambahan dengan maklumat lanjut, termasuk artikel saya sendiri di mana saya pada asalnya menerbitkan infographic yang sama:
- CSS Counters: Counter-Increment and Friends (Web yang mengagumkan)
- bagaimana untuk mendapat manfaat daripada kandungan dan kaunter yang dihasilkan oleh CSS (majalah Smashing)
- gaya kaunter CSS Tahap 3 (W3C Spec)
Pautan terakhir adalah draf editor Spec Counter, yang memperkenalkan beberapa ciri-ciri kaunter yang baru yang mungkin tidak mempunyai banyak, jika ada, sokongan pelayar dan yang mungkin berisiko dalam versi masa depan spec. Ciri-ciri yang saya gunakan dalam artikel ini, bagaimanapun, adalah penyemak imbas, kembali ke IE8.
Menentukan nilai kaunter CSS
Pada pandangan yang cetek, dua masalah utama timbul ketika berfikir pertama tentang melaksanakan kaunter CSS:
- senarai yang diperintahkan sudah melakukan ini, jadi mengapa saya memerlukan ciri yang begitu kompleks hanya untuk item nombor?
- Kandungan yang dihasilkan tidak boleh diakses dan ini mencampurkan kandungan dengan persembahan.
Yang pertama dari kedua -dua masalah itu sebenarnya bukan masalah sama sekali. Sekiranya anda mahu item berturut -turut bernombor maka ia sesuai untuk menggunakan senarai yang diperintahkan (iaitu
Selain itu, walaupun kaunter boleh menjadi sedikit kompleks melihat pandangan pertama, apabila anda memahami konsep unsur-unsur pseudo CSS, mereka benar-benar tidak sukar untuk mengubah dan mengekalkan.
Masalah lain, yang berkaitan dengan kebolehcapaian, nampaknya tidak menjadi masalah besar seperti yang berlaku pada masa lalu. Satu artikel oleh Léonie Watson menyimpulkan:
"[g] kandungan bertenaga adalah aksesibiliti yang disokong dalam kebanyakan penyemak imbas, dan diiktiraf oleh pembaca skrin dengan sewajarnya."Walau bagaimanapun, sokongan tidak 100%, jadi saya akan mengatakan bahawa jika anda akan menggunakan unsur-unsur pseudo untuk menjana kandungan, "kandungan" harus mempunyai nilai hiasan dan tidak penting untuk pemahaman atau fungsi laman web yang dimasukkan ke dalam. Dengan pendekatan yang seimbang dalam fikiran, ia harus baik untuk menggunakan kaunter dalam kes -kes tertentu seperti yang diterangkan di bawah.
kes penggunaan mudah
Baru -baru ini saya melihat spesifikasi Level 4 pemilih W3C dan menyatakan bahawa mereka mempunyai "isu" dan "contoh" yang diselingi dalam kandungan. Saya telah melihat ini sebelum ini tetapi hanya kemudian saya memutuskan untuk menyiasatnya sedikit. Unsur-unsur ini bernombor, jadi saya tertanya-tanya bagaimana mereka dapat menambahkan dan mengeluarkannya tanpa perlu membayar semula keseluruhan set setiap kali. Saya fikir ia mungkin skrip, atau yang dijana di belakang atau sesuatu seperti itu.
nope. Mereka menggunakan kaunter CSS, seperti yang ditunjukkan dalam tangkapan skrin di bawah:
Di samping itu, halaman spec ini juga termasuk indeks isu pada akhir halaman, yang menggunakan pengenal kaunter yang sama sebagai isu, tetapi dalam skop baru sehingga ia memulakan kiraan segar. Senarai isu pendua membuat sedikit lebih banyak kerja untuk mengekalkan isu -isu tetapi, sekali lagi, perintah itu pada umumnya mudah untuk dikekalkan selagi ia sepadan dengan apa yang telah diubah dalam badan kandungan.
demo drag-and-drop
Saya telah mencipta semula contoh W3C supaya anda boleh bermain-main dengan cara kaunter berfungsi, tetapi juga untuk melihat betapa mudahnya untuk membuat senarai dinamik dengan cara ini dari item yang tidak bersebelahan dengan hanya HTML dan CSS.
Lihat pen 20Fe8F19AE48C210DA6C5DF78C0CF6F8 oleh SITEPOINT (@SitePoint) pada CODEPEN.
Dalam demo, saya menggunakan ciri Sortable JQueryui untuk membolehkan anda menyeret dan memerintahkan semula mana-mana perenggan di halaman, termasuk kotak "isu" dan "contoh". Perhatikan bagaimana nombor berubah bergantung pada di mana item diseret (walaupun tingkah laku nombor nampaknya agak unik semasa dalam proses menyeret). Saya juga memasukkan "senarai isu" pendua di bahagian bawah, seperti pada halaman W3C.
Kesimpulan
Ini sepatutnya menjadikannya lebih jelas apa yang boleh digunakan oleh kaunter CSS. Fikirkan mana-mana dokumen yang sering diedit, mungkin juga sesuatu yang dihasilkan oleh pengguna di mana item boleh disusun semula atau dipesan semula. Dan, seperti yang disebutkan, jenis kaunter ini kemungkinan besar berguna apabila penomboran tidak penting untuk pemahaman kandungan dan apabila barang-barang tidak bersebelahan dalam sumber.
Jika anda telah melihat kaunter CSS yang digunakan dalam beberapa cara yang berguna, beritahu kami dalam komen.
Soalan Lazim (Soalan Lazim) Mengenai Kaunter CSS
Apakah jenis kaunter CSS yang berlainan? Jenis 'kaunter' digunakan untuk kaunter peringkat satu, seperti tajuk penomboran dalam dokumen. Jenis 'kaunter', sebaliknya, digunakan untuk kaunter pelbagai peringkat, seperti penomboran sub-bahagian dalam bahagian. Kedua -dua jenis ini digunakan dengan harta 'kandungan' dalam CSS untuk memaparkan nilai kaunter.
Bagaimana saya menetapkan semula kaunter CSS? Harta ini menetapkan kaunter kepada mana -mana nombor tertentu. Sebagai contoh, 'restra-reset: seksyen;' akan menetapkan semula kaunter 'seksyen' kepada sifar. Anda juga boleh menetapkan kaunter ke nombor yang berbeza, seperti 'restra-reset: seksyen 5;', yang akan menetapkan semula kaunter 'seksyen' kepada lima.
Ya, kaunter CSS boleh digunakan dengan senarai. Ini amat berguna apabila anda ingin menyesuaikan penomboran item senarai. Anda boleh menggunakan sifat 'restra-reset' dan 'counter-increment' untuk mengawal penomboran, dan harta 'kandungan' untuk memaparkan nilai kaunter.
Nombor yang dihasilkan oleh kaunter CSS boleh digayakan sama seperti teks lain dalam CSS. Anda boleh menggunakan sifat seperti 'warna', 'saiz font', 'font-weight', dan lain-lain, untuk gaya nombor. Gaya akan digunakan untuk nombor apabila ia dihasilkan oleh harta 'kandungan'. . Ini boleh dilakukan dengan menggunakan harta 'kaunter-reset' pada elemen 'jadual', harta 'counter-increment' pada elemen 'tr', dan harta 'kandungan' pada 'sebelum' atau 'selepas' pseudo -Lemen dalam elemen 'tr'.
Bagaimana saya membuat kaunter pelbagai peringkat dengan kaunter CSS? CSS. Fungsi ini mengambil dua argumen: nama kaunter dan rentetan yang akan digunakan sebagai pemisah antara tahap. Sebagai contoh, 'Kandungan: Kaunter (Seksyen, ".");' Ya, kaunter CSS sering digunakan dengan unsur-unsur 'sebelum' dan 'selepas' pseudo. Harta 'kandungan', yang digunakan untuk memaparkan nilai kaunter, hanya boleh digunakan dengan unsur-unsur pseudo ini. bertambah menggunakan harta 'kaunter-kenalan'. Harta ini meningkatkan nilai kaunter oleh satu setiap kali ia dipanggil. Contohnya, 'Kaunter Kaunter: Seksyen;' Akan Meningkatkan Kaunter 'Seksyen'. . Ini boleh dilakukan dengan menetapkan harta 'restra-reset' atau 'counter-increment' kepada nombor negatif. Sebagai contoh, 'restra -reset: seksyen -1;' akan menetapkan kaunter 'seksyen' kepada satu negatif.
Bolehkah saya menggunakan kaunter CSS dengan sifat CSS yang lain? Sebagai contoh, anda boleh menggunakan fungsi 'kaunter' atau 'kaunter' dengan harta 'kandungan' untuk memaparkan nilai kaunter. Anda juga boleh menggunakan sifat 'restra-reset' dan 'counter-increment' dengan mana-mana elemen untuk mengawal nilai kaunter.
Atas ialah kandungan terperinci Memahami kaunter CSS dan kes penggunaannya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Pembangunan perisian telekom yang disesuaikan tidak dapat diragukan lagi merupakan pelaburan yang besar. Walau bagaimanapun, dalam jangka masa panjang, anda mungkin menyedari bahawa projek sedemikian mungkin lebih kos efektif kerana ia dapat meningkatkan produktiviti anda seperti penyelesaian siap sedia di pasaran. Memahami kelebihan yang paling penting untuk membina sistem telekomunikasi yang disesuaikan. Dapatkan ciri tepat yang anda perlukan Terdapat dua masalah yang berpotensi dengan perisian telekomunikasi di luar rak yang boleh anda beli. Sesetengah kekurangan ciri berguna yang dapat meningkatkan produktiviti anda dengan ketara. Kadang -kadang anda dapat meningkatkannya dengan beberapa integrasi luaran, tetapi itu tidak selalu cukup untuk menjadikannya hebat. Perisian lain mempunyai terlalu banyak fungsi dan terlalu rumit untuk digunakan. Anda mungkin tidak akan menggunakan beberapa perkara ini (tidak pernah!). Sebilangan besar ciri biasanya menambah harga. Berdasarkan keperluan anda

Teka -teki dan penyelesaian CI/CD untuk perisian sumber terbuka dalam seni bina ARM64 Menggunakan perisian sumber terbuka pada seni bina ARM64 memerlukan persekitaran CI/CD yang kuat. Walau bagaimanapun, terdapat perbezaan antara tahap sokongan ARM64 dan seni bina pemproses tradisional x86, yang sering merugikan. Pemaju komponen infrastruktur untuk pelbagai seni bina mempunyai jangkaan tertentu untuk persekitaran kerja mereka: Konsistensi: Alat dan kaedah yang digunakan di seluruh platform adalah konsisten, mengelakkan keperluan untuk mengubah proses pembangunan disebabkan penggunaan platform yang kurang popular. Prestasi: Platform dan mekanisme sokongan mempunyai prestasi yang baik untuk memastikan senario penempatan tidak terjejas oleh kelajuan yang tidak mencukupi apabila menyokong pelbagai platform. Liputan Ujian: Kecekapan, Pematuhan dan

Tinggal maklumat mengenai trend teknologi terkini dengan surat berita pemaju teratas ini! Senarai ini menawarkan sesuatu untuk semua orang, dari peminat AI ke pemaju backend dan frontend yang berpengalaman. Pilih kegemaran anda dan menjimatkan masa mencari rel

Tutorial ini membimbing anda melalui membina saluran paip pemprosesan imej tanpa pelayan menggunakan perkhidmatan AWS. Kami akan membuat frontend next.js yang digunakan pada kluster ECS Fargate, berinteraksi dengan Gateway API, Fungsi Lambda, Bucket S3, dan DynamoDB. Th

Program perintis ini, kerjasama antara CNCF (Yayasan Pengkomputeran Native Cloud), pengkomputeran ampere, equinix metal, dan digerakkan, menyelaraskan ARM64 CI/CD untuk projek GitHub CNCF. Inisiatif ini menangani kebimbangan keselamatan dan prestasi lim


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

Dreamweaver CS6
Alat pembangunan web visual

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)
