SCSSの「each」の使い方

Categories: SCSS
最終更新日: 2023.08.10
公開日: 2023.08.10

SCSSでは each を使って繰り返しを指定することができます。

今回は「each」を使ったスタイルの設定方法についてご紹介します。

@each

each では配列を使ってスタイルをまとめて設定することができます。

背景色指定のスタイルを作るサンプル

SCSS

$colors: (
  red: #a33,
  green: #3a3,
  blue: #33a,
  pink: #faa,
  yellow: #ff3,
);
  
@each $key, $val in $colors {
  .block-#{$key} {
    background-color: $val;
  }
}

CSS

.block-red {
  background-color: #a33
}

.block-green {
  background-color: #3a3
}

.block-blue {
  background-color: #33a
}

.block-pink {
  background-color: #faa
}

.block-yellow {
  background-color: #ff3
}

変数 $colors にマップ配列で使いたい色の key と 値を格納します。

@each$colors の内容を処理ます。

eachの中では、$key$val を使ってClassと背景色の色指摘を記述します。

この方法でClassを作成すれば記述するSCSSの量は数行で済みますし、色の追加や削除は配列の中を変更するだけになるため対応が楽になります。