BEMとoocssについて質問です。
下記のページを見ていたら、BEMよりOOCSSだ、といった議論がコメント欄でありました。
http://w3q.jp/t/6191
最近、CSS設計の緑の本を買ってOOCSSやBEMのことを学んだばかりなのですが、BEMよりOOCSSというのはおかしいのではないかと、先のリンク先のコメント欄を見ていて感じてしまいました。
BEMは命名方法でOOCSSはCSSの設計概念ではないのですか?
aではなくbという風に比較対象に出来るものではない気がしたのですが、私の認識違いでしょうか?
BEMで名前をつけて、OOCSSの概念でCSSの抽象化や共通化を同時に行うことは出来るのではないですか?
最近、BEMやOOCSSのことを学んだばかりなので、理解がまだ乏しのだと思うのですが、ご意見、ご指摘頂けると嬉しいです!
よろしくお願いいたします。
みんなの回答 1 件
自分もBEMを完璧には把握してないけど、コレに関しては分かる。
BEMはただの命名法則だと思いがちだけど、OOCSSの概念が一部含まれたような命名法則及びCSS設計方法だと考えた方がいい。
具体的に説明するとBEMを構成する要素はそれぞれ、
B = Block
E = Element
M = Modifier
に分類されるんだが
BlockがOOCSSでのパーツ設計(モジュール)に該当し、Modifierが複数パターン制作に当たる。(OOCSSだと特別なルールがない限り、CSSの中身で判断するしかないけど、BEMはクラス名を見ただけでこれらを判断することが可能)
もちろん無理やり同時に使用することは可能だけど、単純にややこしいし、両方の良い面を潰しかねないので別で使用するべきだと思う。
だから比較対象にもなり得るよ。
関連するトピックス