SMACSSその1 (概要、ベース、レイアウト、モジュール)
コーディングをしていくうちにどうもCSSの扱い方がまだ雑だなと感じるところが多々あり、もっと誰でも読める伝わりやすい設計をしたいと思い、SMACSSという概念を教えていただきました。
SMACSSは厳格なフレームワークというよりはスタイルガイドである。SMACSSはデザインプロセスを分析するための手法であり、厳格なフレームワークを柔軟な思考過程とする手法だ。そしてCSSを使ったウェブサイトの開発に対する一貫したアプローチをドキュメント化する試みでもある。
要はこう書いたらCSS設計が最高に良くなるよ。ってことです。
SMACCSにはルールを5つのカテゴリに分類されています。
ここではデザインを決めるとその後いちいち上書きすることになるので、避けたほうがいいとされています。
CSSをリセットするのもベースルールに含まれていて、
reset.cssやnormalize.cssなどを使うのも有効的である。
-----------------------------------------------
-----------------------------------------------
レイアウト目的として独立したルールのを設けておくと管理しやすくなります。
例えば、プリフィックスをつけて、これはレイアウトのルールだとわかるようにします。
-----------------------------------------------
.l-header or .layout-header
.l-sidebar or .layout-sidebar
-----------------------------------------------
このようにプリフィックスをつけるのが推奨されています。
-----------------------------------------------
-----------------------------------------------
というように、親に.l-fixedをつけることによって、ここは固定のレイアウトルールとわかるようにしたりできます。
再利用可能なモジュールを作成し、レイアウトと合わせる
-----------------------------------------------
-----------------------------------------------
-----------------------------------------------
-----------------------------------------------
とレイアウトとモジュールの独立をすることでモジュールの再利用がしやすくなる。
まずは概要、ベース、レイアウト、モジュールを書きました。
SMACSSによるCSSの設計ー第1回 ベースとレイアウト
SMACSSからCSSプリプロセッサとの付き合い方について学んだこと