I'm kubosho_

思想の固まり

Sassなどにあるルールセットを入れ子できる機能がいらないと感じる理由

Sassなどにはルールセットを入れ子できる機能がありますが、個人的にはいらない機能だと感じています。

理由は、詳細度の総計が分かりにくくなるので .foo .bar .baz .foobar みたいに上書きしにくいセレクタ宣言ができてしまうことが多いように感じるためです。 先ほどのセレクタ内で宣言されたスタイルを上書きするためには、次のことをやらないといけないでしょう。

  • 同じくらい入れ子する
  • !important を使う
  • そもそも入れ子の数を制限する

しかし、同じくらい入れ子する、もしくは !impotant を使った時点で管理できないCSSへ一歩踏み出していると思います。 またそもそも入れ子の数を制限するのはありだと思いますが、それだと入れ子がある意味が分からなくなると思います。

なので、ルールセットの入れ子はいらないと思います。


と思いましたが、BEMの考え方でセレクタを書く場合は必要ですね。それ以外はいらなそうですが…