LoginSignup
3
8

More than 5 years have passed since last update.

BEMでの書き方

Last updated at Posted at 2017-05-02

BEM とは

html のクラスやIDの命名規則の1つです。
コードが扱いやすくなります。

この記事では、MindBEMdingを少し変えたものを紹介します。
(相違点:Element の前のアンダースコアが1つだけです。)
haml で表記します。

書き方

クラス・IDを次のように名づけます。

block_element--modifier

区分名が2語以上の場合は ハイフン1つ - でつなげます。

.side-btn

区分け

BEM では、ページの構成要素を、block、element、modifier に分けます。

block

必然的に、または機能的に独立した区分のことです。
block の中に block を入れてもOKです。

.header .card  #sidebar  %table  %ul
.sidebar
  %ul

element

それ以上細分化できない区分のことです。
block の中にあります。
element の前にはアンダースコア _ をつけます。(タグはそのままです。)

.header_tab .card_title .sidebar_submit  %td %li

modifier

特定の block、elementを修飾するクラス、IDのことです。
modifier の接尾語の前にハイフン2個 -- をつけます。

.header_tab--gray .card--gray

補足

・タグの下に element を付けるとき
・タグに modifier を付けるとき
は、.gray のように名づけるか、タグの上にクラスを設けて、.table--gray のようにします。

%table.gray
.table
  %table.table--gray

リンク

BEM 公式サイト > Key concepts
https://en.bem.info/methodology/key-concepts/#block

3
8
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
3
8