1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【初心者向け】cssのclass名の付け方って、どんな名前をつけたらいいか分からないよね。についての回答。

Last updated at Posted at 2019-08-28

WEB業界に入ってhtml / cssを学習し始めた頃、
えっclass名って、どんな名前を付けたらいいの?
っていう問題が自分の中でありました。

当時の僕はこう思っていました。

###「どんなclass名をつけたら正解なんかが分からん」

周りに聞いても結局、
👪「とりあえずこういう名前にしとこか」
👨‍👨‍👧「後で見た時に分かりやすい名前をつけるんよ」
とか言いながら、さらっと名前をつけてしまう。

で、こう思ったわけですよ。
👳‍♂️「えっなんでその名前にしたん?」
この疑問に嫌味な意味はなく、本当に単純に理由が知りたい。

経験者はわかってるんですね。
cssの設計がもうすでに頭にあるわけやから命名ルールに沿ってつけていくだけ。
でも、初心者からすると「なぜそうなのか」が分からない。

あとあとわかったけど、結構なんとなくの名前でつけてます。
単純に囲いたいだけなら「wrap」とか「area」
カード型みたいな表示にしたいなら「card」とかそんな感じ。

なので僕のclass名のつけかたを少しだけ書いておきます。
※あっ独自ルールのやつです。

ちなみにアンスコ2つにしているのはBEMっぽさと
class名の見やすさと外部apiのcssとの差別化を図るためです。
(大体はアンスコ1つじゃないかな。)


大枠、レイアウト

・〇〇__area
・〇〇__box
・〇〇__card
・〇〇__contents

要素を囲いたいときは、親要素に__wrapを

・〇〇__area__wrap
・〇〇__box__wrap

ヘッダー/フッター部分

・〇〇__header
・〇〇__footer

内容の中のヘッダーやフッターは

・〇〇__content__top
・〇〇__content__bottom

header の入れ子の要素は、

・〇〇__title -> title 内の要素は p とか span とかで囲ってもいい
・〇〇__side -> side 内の要素は header__side__item(itemを使う)
※切り分けるために item にもう一つclass名をつける場合は、type__〇〇みたいな感じ。
※item じゃなくてボタンとかの場合も type__submit type__cancel とかで切り分ける。
※他には mode__〇〇 とかよく使います。

内容部分

・〇〇__body
・〇〇__content
※内包する要素のclass名としては、〇〇__areaとか、〇〇__box、〇〇__card、
とか形状によってそれぞれ名前を変更したりします。


大まかなレイアウト時はこんな感じです。

「〇〇__の部分ってなんて名前にすればいいの?」

例えばサイトTOPページなら site-top
サイトの概要のページだと site-info みたいな。
あとは site__title とか info__title、site-info__title にしてもいい

とりあえずは自分なりのルールを作って、統一性を持たせたclass名を心がける。
慣れてきたらBEMとかの玄人さんたちが考え出した、命名規則を勉強するといいかも。

「あっ最後にこれだけは!」

シンプルな単語のみのclass名は絶対やめたほうがいい。
後でcssを作り込んでいる時に、予期せぬスタイルが反映されて大変なことになる。
content とか、text とか、
あとは left とか right とか、場所が固定されるものは極力使用しないように。
(cssでレイアウトの位置替えは楽勝なので)

それでは。

1
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?