Web制作コラム

CSS設計とは|命名規則を、実務でどこまで使うか

コーディング

BEM・FLOCSS といった設計手法は、名前を揃えるためだけのものではありません。何を防ぐための決まりなのかと、案件の規模ごとにどこまで持ち込むかの線引きをまとめます。

CSS設計とは、クラス名の付け方とファイルの分け方をあらかじめ決めておく取り決めのことです。BEM、OOCSS、SMACSS、FLOCSS といった名前で呼ばれる方式がいくつかあります。

どれも目的は同じで、「ここを直したら、関係ないところが崩れた」を起こさないことです。見た目を作るだけなら設計は要りません。要るのは、半年後に別の人が触るときです。

設計が無いと何が起きるか

  • 同じ見た目を作るのに、毎回ゼロから書くことになる
  • クラス名が被って、意図しないところにスタイルが当たる
  • 打ち消すための !important が増えていく
  • 消していいCSSが分からなくなり、誰も消さなくなる
  • セレクタがどんどん長くなり、詳細度の勝負になる

!important が数えるほど出てきたら、設計が破綻しているサインです。その時点で直すほうが、積み上がってから直すより安く済みます。

主な方式

BEM

Block(まとまり)・Element(その中の要素)・Modifier(状態や種類)の3つで名前を作ります。card__title、card__title--large のような書き方です。名前が長くなる代わりに、どこに属するクラスなのかが一目で分かります。

OOCSS

見た目の部品を、置き場所から切り離して使い回す考え方です。ボタンの形と、そのボタンがページのどこにあるかを別のクラスで表します。

SMACSS / FLOCSS

CSSをどのファイルに書くかの分類です。土台・レイアウト・部品・状態のように層を決めて、上書きの向きを一方向に揃えます。FLOCSS は日本で提案されたもので、BEM の命名と組み合わせて使われることが多い形です。

実務ではどこまでやるか

規模目安
LP 1枚命名の方針だけ決めれば十分。層分けまでは要らない
10ページ前後のコーポレート部品のクラスを BEM で揃える。ファイルは部品ごとに分ける
更新が続くサイト・複数人で触る層分けまで決める。どこに追記するかを書き残す

※ 横にスクロールできます

方式の名前にこだわる必要はありません。大事なのは、そのサイトの中で一貫していることです。BEM と別の書き方が混ざった状態が、いちばん触りにくくなります。

Tailwind のような考え方

近年は、クラス名を考えず、あらかじめ用意された細かいクラスを HTML に並べる方法も広く使われています。命名で悩まなくて済む一方、HTML が長くなり、同じ見た目を複数箇所で書くことになります。どちらが良いかではなく、更新する人が HTML を触れるかどうかで決まります。

引き継ぎのときに見るところ

  1. クラス名の付け方が途中で変わっていないか
  2. CSSがどのファイルに分かれていて、読み込み順がどうなっているか
  3. 使われていないCSSがどれくらい残っているか
  4. !important がどこで使われているか

当社でお預かりする改修案件では、まずこの4点を見てから見積りを出しています。設計が残っていれば部分的な修正で済みますし、崩れていればCSSの作り直しを含めてご提案します。

「コーディング」のコラム

この記事と同じカテゴリの記事です。

一覧に戻る

SERVICES

WordPressとECサイトの制作、
まとめてご相談いただけます

WordPress

WordPress制作・構築代行

デザインデータやコーディング済みHTMLを、オリジナルテーマとして構築します。プラグイン開発も対応。

構築基本費用 50,000円

詳しく見る
コーディング

コーディング代行

デザインデータをHTML/CSSに起こします。WordPress化まで通しでも、コーディングだけでも承ります。

1ページ 15,000円〜

詳しく見る
React

Reactコーディング代行

デザインデータをReactのコンポーネントとして実装します。既存アプリへの画面追加・UI改修だけでも承ります。

1ページ 18,000円〜

詳しく見る
Next.js

Next.js制作・コーディング代行

検索エンジンに読まれるHTMLを返せるNext.jsで構築します。静的書き出しでレンタルサーバーでも公開できます。

1ページ 18,000円〜

詳しく見る
EC / WordPress

WelcartでのECサイト構築

WordPress専用のネットショップ構築プラグイン。機能面まで踏み込んだカスタマイズができます。

デザイン制作+構築 一式 120万円〜

詳しく見る
EC / EC-CUBE

EC-CUBEでのECサイト構築

国産オープンソースのECパッケージ。決済・受注・在庫まわりを業務に合わせて作り込めます。

デザイン制作+構築 一式 120万円〜

詳しく見る
EC / ASPカート

ECサイト制作代行

Shopify・MakeShop・カラーミーなどのカートに、オリジナルデザインを組み込みます。

構築基本費用 100,000円

詳しく見る

制作のご相談も承っています

デザインデータと画面数をお知らせいただければ、お見積りと納期をご提示します。

直近2週間の受付状況制作のリソース

9/29(月)〜10/3(金)残りわずか
10/6(月)〜10/10(金)余裕があります
Chatworkで相談する