SMACSS採用の理由
CSSのクラス命名記法は、ハイフンで接続する「SMACSS」と、アンダースコアで接続する「BEM」に大きく分けられます。
echo.cssは、コーディングルールにSMACSSを採用しています。理由は以下のとおりです。
- クラス名が短く簡潔
- コーディングスキルが高くない制作者にも理解しやすい
- PHPやJavaScriptの変数名と重複しにくい(変数名にはキャメルケースやアンダースコアが使用されることが多いため)
BEM記法に変更する手順
Sassを使用できる環境では、BEM記法に変更することができます。
設定ファイル _scss/_config_basic.scss
をエディタで開き、15行目付近にある変数 $rule
の値を 'bem'
に変更して、リビルドしてください。
$rule: 'bem' !default;
BEM記法の場合の基本ルール
要素同士はアンダースコア2つで接続されます。
.echo-card__header {
padding: 10px 10px;
}
.echo-card__contents {
padding: 10px 10px;
font-size: 0.75rem;
line-height: 1.125rem;
}
「色」「大きさ」などを示すモディファーはハイフン2つで接続されます。
.echo-button--info {
...
}
「AがB」といった挙動を表す key, value はハイフン2つで接続されます。
.echo-grid__col--order--lg--last {
...
}
これらのルールを変更したい場合は、 _scss/_config_advance.scss
を参照ください。