CSSで一番迷うのが、ネーミングです。
初心者はクラス名を、その場その場で考えがちで、後から破綻しがちです。
頭の中でなんとなく決めていても、やはり破綻してしまいます。
更新や改修をかけていくうちに破綻するのはある程度、
仕方ない部分もありますが、
初期構築時に、しっかりとした命名規則を設計しておけば、後々、楽になります。
便利なネーミングルール
SMACSSやBEMなど、便利なネーミングルールはあります。
参考
- SMACSSによるCSSの設計 - ベースとレイアウト
- SMACSSによるCSS設計
- BEMによるフロントエンドの設計 - 基本概念とルール
- BEMを参考にしたCSS設計
- SMACSSにBEMを取り入れたクラス名の命名規則 | SONICMOOV LAB
シングルクラスかマルチクラスか、サイトによって使い分けを行っているかと思います。
私の場合、10ページ以内の小規模なサイトだとマルチクラス、
追加・変更などが頻繁にある大型サイト(情報系やECなど)だとシングルクラスを利用しています。
最初のネーミングは大切
何を使うにしても、最初の命名規則は大切です。
header内のdivの入れ子の命名を、「innerにするか?」「wrapにするか?」など、作りながら考えるとあとで忘れて、手戻りになることが多かったですが、最初に決めてからコーディングするので破綻が減りました。
いろいろ試しましたが、意外と便利で破綻が少ないのが、
最初にデザインを印刷し、紙にクラス名を書いていくことです。
デジタルな仕事のわりに、かなりアナログですが、手で書くことで整理されていきます。
フリクションのボールペンなら消すこともできるので、気軽に変更できます。
ベースのコーディングが出来上がれば、CSSのStyleGuideを作っています。
コーディングを他の人に頼む場合などには、StyleGuideをシェアしないと、いちいち尋ねられたりして手間がかかります。
Kalei Styleguideだと、RubyとかNode.jsとか必要ないので、MAMMPなどを入れれば初心者でも使えるので、便利です。