class
同じ見た目や役割を複数の要素で再利用するときに使います。
命名の基本
「赤い左の箱」ではなく「エラーメッセージ」「記事カードの続きを読むリンク」のように入力すると、変更に強い名前を提案できます。
同じ見た目や役割を複数の要素で再利用するときに使います。
ページ内で1つだけの場所やアンカーに使います。繰り返す部品には向きません。
.card__title--largeのように、部品・要素・種類の関係を表します。
data-action="open-dialog"のように、JavaScriptの操作対象を表します。
候補
入力から「どの部品の、何をする要素か」を読み取り、具体的な名前から順に表示します。
説明を入力すると候補が表示されます。
命名の考え方
CSSを読んだ人が、画面を見なくても用途を推測できる状態を目指します。
.red-button(赤いボタン)ではなく、.delete-button(削除ボタン)のように「何をする要素か」を名前にします。色を変えても名前と役割が食い違いません。
記事カード内のリンクなら.article-card__read-moreのように、どこに属するかを明確にします。
.is-open、.is-selectedなどを使い、可能ならaria-expandedやhiddenも併用します。
CSSでは.article-cardと.article_cardのどちらも使えます。このツールは、単語の境目が読みやすく広く使われるkebab-case(ハイフン区切り)を初期値にしています。既存のルールがある場合は、その区切り方に統一してください。
| 避けたい名前 | 問題 | 代替候補 |
|---|---|---|
| .tyuuou | 日本語のローマ字読みで、第三者が意味を推測しにくい | .centered-content / .content-center |
| .kaijo | 解除・取消・初期化など、操作の意味が曖昧 | .cancel-button / .clear-button / .reset-button |
| .red-button | 配色変更で名前と見た目が一致しなくなる | .delete-button / .primary-action |
| .button1 | 連番では役割と差分が分からない | .search-submit / .dialog-close |
| #article-card | 一覧内で繰り返す要素にIDを使うと重複する | .article-card |
| .js-open | 装飾クラスと操作フックが混在しやすい | [data-action="open-dialog"] |
次に調べる
使用する要素の意味はHTML辞典、指定できるプロパティと値はCSS辞典、動きの実例はCSSアニメーション図鑑から確認できます。
既存プロジェクトの命名規則、チームのコーディング規約、フレームワークの慣例がある場合はそちらを優先してください。