Terdapat banyak metodologi CSS di luar sana, dan saya benci semuanya. Ada yang lebih (tailwind & al.) dan ada yang kurang (BEM, OOCSS, dll.). Tetapi pada penghujung hari, mereka semua mempunyai kelemahan.
Orang ramai menggunakan pendekatan ini untuk alasan yang baik, sudah tentu, dan banyak masalah yang ditangani adalah yang saya juga hadapi. Jadi dalam siaran ini, saya ingin menulis garis panduan saya sendiri tentang cara saya memastikan CSS teratur.
Ini bukan metodologi CSS yang diterangkan sepenuhnya yang boleh digunakan oleh sesiapa sahaja. Mungkin ia boleh diubah menjadi satu dengan beberapa kerja tambahan, tetapi tujuan siaran ini hanyalah untuk menunjukkan cara saya membuat keputusan ini semasa menulis CSS.
Elemen Terbina
Sebagai peraturan biasa, saya cuba menggunakan jenis elemen terbina sebanyak mungkin dan dengan sedikit tambahan yang mungkin.
Memiliki keperluan untuk seribu jenis butang yang berbeza adalah tanda bahawa mungkin terdapat sesuatu yang tidak kena dengan reka bentuk pada tahap yang lebih mendalam, jadi sementara dalam beberapa kes saya mendapat daya tarikan CSS menjadi lengai sehingga kelas khusus rangka kerja digunakan , dalam kebanyakan kes saya melihatnya sebagai ideal apabila butang hanyalah
div.btton sepatutnya bertukar menjadi butang
Elemen Tersuai
Bukan semua elemen reka bentuk mempunyai padanan HTML yang sesuai secara semantik dan untuk kes ini, saya biasanya menggunakan elemen tersuai.
Saya tidak pernah melihat banyak contoh nama elemen tersuai digunakan tanpa sebarang javascript yang disertakan, tetapi ia telah terbukti sebagai pilihan yang sangat kukuh untuk menulis HTML yang jelas yang juga kelihatan seperti yang saya mahukan.
Elemen yang sepenuhnya berasingan dari segi reka bentuk juga lebih berkemungkinan, dari masa ke masa, membangunkan keperluan yang hanya boleh dilaksanakan dengan JavaScript, yang memberikan anda laluan yang jelas untuk melaksanakan perkara yang tidak memerlukan sebarang perubahan dalam HTML mahupun CSS.
div.vsep sepatutnya bertukar menjadi pemisah menegak
Kelas
Kelas harus berfungsi sebagai pengubah suai nama nod sedia ada, bukannya jenis elemen baharu sepenuhnya, dan selalunya mempunyai kesan yang serupa tetapi berbeza pada jenis elemen yang berbeza.
Butang berbahaya ialah butang.bahaya
Atribut
Sesetengah cara mengubah suai elemen bukanlah suis hidup/mati yang mudah yang kelas berguna, tetapi berkelakuan lebih seperti pasangan nilai kunci.
Dalam kes ini, atribut tersuai dengan pemilih yang sepadan telah terbukti sebagai pilihan terbaik hampir setiap kali saya menggunakannya. Tidak seperti kelas sempang, kelas tersebut dipaparkan pada peringkat sintaks iaitu atribut dan nilai, menjadikannya lebih mudah untuk editor menyerlahkannya, lebih mudah untuk mata manusia menghuraikan dengan cepat dan lebih mudah untuk antara muka menggunakan JavaScript.
Bagi kita yang masih menaruh harapan bahawa fungsi attr() mungkin suatu hari nanti akan memasuki CSS untuk lebih daripada sekadar kandungan, ini juga merupakan lapisan tambahan kalis masa hadapan.
ID
ID adalah, mengikut definisi, unik di dalam dokumen. Oleh itu, sebarang peraturan yang menyasarkan ID tertentu akan dihadkan dan mungkin memerlukan pemfaktoran semula jika kemudiannya ternyata terdapat lebih daripada satu elemen jenis ini pada lage selepas semua.
Oleh itu, ID hendaklah digunakan dengan berhati-hati dan hanya apabila tidak masuk akal untuk mempunyai lebih daripada satu elemen dalam satu dokumen.
Faedah berbanding kelas dari segi praktikal dan kebolehbacaan agak kecil, jadi kesilapan di sebelah kelas biasanya merupakan idea terbaik apabila tiada hubungan 1-dengan-1 yang jelas antara elemen dan penggayaan dapat dikenal pasti.
CSS sebaris
Mana-mana aplikasi dunia sebenar pada satu ketika akan mempunyai elemen yang hanya memerlukan pengubahsuaian individu untuk menjadikannya lebih menarik dari segi estetika dalam konteks yang muncul.
Dalam kes ini, atribut gaya ialah cara yang perlu dilakukan. Sebarang sebab mengapa menggunakannya dianggap sebagai amalan buruk terpakai pada sebarang jenis penggayaan sebaris, termasuk kelas utiliti. Masalahnya bukan atribut, ia mencampurkan penggayaan dan markup.
Satu perbezaan antara gaya dan kelas untuk gaya sebaris ialah satu menunjukkan tujuan, membenarkan penggunaan CSS biasa dan kebanyakannya universal, manakala satu lagi tidak.
Ringkasnya, lebar: 100px mempunyai makna yang ditakrifkan secara universal, manakala .width-100 boleh bermakna apa sahaja.
Kelas Utiliti
Dalam keadaan yang sangat jarang berlaku, gaya khusus unsur menjadi sangat rumit sehingga menyelitkannya secara eksplisit akan membahayakan kebolehbacaan, atau bahkan mustahil (contohnya jika ia memerlukan pertanyaan media).
Dalam kes ini, kelas utiliti pada asasnya adalah satu-satunya pilihan, walaupun ia hodoh.
Dalam dunia yang ideal, ini boleh dikendalikan secara berasingan daripada kelas campuran tertentu, malah saya telah mempertimbangkan untuk menggunakan awalan untuk membezakannya dengan lebih mudah, tetapi akhirnya tidak menemui cara yang baik untuk menjadikannya tidak hodoh.
Saya suka idea untuk menetapkan awalan kelas utiliti dengan + untuk mewakili bahawa mereka menambah beberapa jenis fungsi pada elemen, berbeza dengan kelas biasa, yang menentukan jenis elemen.
Dan itu sahaja mengenainya. Sudah tentu, tiada dua projek adalah sama, dan kadangkala peraturan perlu dibengkokkan sedikit untuk kekal praktikal, tetapi secara keseluruhan, itulah rangka kerja saya untuk memutuskan cara membuat sesuatu pada skrin kelihatan seperti cara tertentu.
Apakah pendapat anda? Adakah anda membencinya? Adakah anda fikir ia masuk akal? Beritahu saya dalam ulasan ?
Atas ialah kandungan terperinci Bagaimana saya menulis pemilih CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Dalam jawatan ini, Blackle Mori menunjukkan kepada anda beberapa hacks yang ditemui semasa cuba menolak had sokongan HTML Cohost. Gunakan ini jika anda berani, supaya anda juga dilabelkan sebagai penjenayah CSS.

Kursor adat dengan CSS adalah hebat, tetapi kita boleh mengambil sesuatu ke peringkat seterusnya dengan JavaScript. Menggunakan JavaScript, kita boleh beralih antara negeri kursor, letakkan teks dinamik dalam kursor, gunakan animasi kompleks, dan gunakan penapis.

Animasi CSS interaktif dengan unsur -unsur yang menghilangkan satu sama lain kelihatan lebih masuk akal pada tahun 2025. Walaupun tidak perlu untuk melaksanakan pong dalam CSS, peningkatan fleksibiliti dan kuasa CSS mengukuhkan kecurigaan Lee '

Petua dan cara untuk menggunakan harta penapis latar belakang CSS ke antara muka pengguna gaya. Anda akan belajar bagaimana untuk meletakkan penapis latar belakang di antara pelbagai elemen, dan mengintegrasikannya dengan kesan grafik CSS yang lain untuk membuat reka bentuk yang rumit.

Nah, ternyata ciri-ciri animasi terbina dalam SVG ' s tidak pernah ditamatkan seperti yang dirancang. Pasti, CSS dan JavaScript lebih mampu membawa beban, tetapi ia baik untuk mengetahui bahawa SMIL tidak mati di dalam air seperti sebelumnya

Yay, let ' s melompat untuk teks-wrap: Pretty Landing dalam Pratonton Teknologi Safari! Tetapi berhati -hatilah bahawa ia ' s berbeza dari bagaimana ia berfungsi dalam pelayar kromium.

Kemas kini trik CSS ini menyoroti kemajuan yang ketara dalam almanak, penampilan podcast baru-baru ini, panduan kaunter CSS baru, dan penambahan beberapa penulis baru yang menyumbang kandungan berharga.

Kebanyakan masa, orang mempamerkan ciri-ciri Tailwind ' Apabila dipamerkan dengan cara ini, @apply tidak menjanjikan sama sekali. Jadi obvio


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!

VSCode Windows 64-bit Muat Turun
Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

Dreamweaver CS6
Alat pembangunan web visual
