カテゴリ: Bootstrap 更新日: 2025/10/30

BootstrapのSass変数とマップ変更点を徹底解説!初心者でもわかるテーマ再設計とカラー体系の移し替え

Sass変数・マップの変更点:テーマ再設計とカラー体系の移し替え
Sass変数・マップの変更点:テーマ再設計とカラー体系の移し替え

先生と生徒の会話形式で理解しよう

生徒

「Bootstrap3から5に移行するときに、色の指定が変わったって聞いたんですがどういうことですか?」

先生

「Bootstrap5ではSass変数やマップの扱い方が大きく変わっています。特にカラー体系の管理方法が整理されて、テーマ全体の再設計がしやすくなりました。」

生徒

「Sassって何ですか?CSSと違うんですか?」

先生

「SassはCSSをもっと便利に書けるようにするための仕組みです。変数を使って色をまとめて管理できるので、デザインを一括で変更するのに役立ちます。」

1. Bootstrap3・4とBootstrap5のSass変数の違い

1. Bootstrap3・4とBootstrap5のSass変数の違い
1. Bootstrap3・4とBootstrap5のSass変数の違い

Bootstrap3や4では、色やサイズなどをカスタマイズするために個別の変数がたくさん存在していました。例えば「$brand-primary」という変数を使って、サイト全体のメインカラーを指定していました。

しかし、Bootstrap5では変数がより体系的に整理され、カラーをまとめた「マップ」という仕組みが導入されています。マップとは、ひとつの箱に複数の色をまとめて管理するようなイメージです。

例えば、赤・青・緑といった色をバラバラに扱うのではなく「色セット」としてひとまとめにできるので、テーマ全体を見直すときに便利です。

2. Sass変数とマップを使ったカラー管理の基本

2. Sass変数とマップを使ったカラー管理の基本
2. Sass変数とマップを使ったカラー管理の基本

Bootstrap5では、色は「$colors」というマップにまとめられています。この中に「primary」「secondary」「success」などのキーがあり、それぞれに色が割り当てられています。

初心者の方は「キー」という言葉に馴染みがないかもしれません。これは「名前をつけておいたラベル」のようなものだと思ってください。たとえば「primary=青」「danger=赤」といった具合です。


$colors: (
  "primary": #0d6efd,
  "secondary": #6c757d,
  "success": #198754,
  "danger": #dc3545,
  "warning": #ffc107,
  "info": #0dcaf0,
  "light": #f8f9fa,
  "dark": #212529
);

3. テーマ再設計でのカラー体系の移し替え

3. テーマ再設計でのカラー体系の移し替え
3. テーマ再設計でのカラー体系の移し替え

Bootstrap3では「$brand-primary」などの単独変数を上書きして色を変更していました。しかしBootstrap5ではマップの中身を変更する方法が主流です。

例えば、サイトのメインカラーを青から緑に変更したい場合、次のようにマップを上書きします。


$theme-colors: map-merge(
  $theme-colors,
  (
    "primary": #28a745
  )
);

これにより「primary」と指定していた部分すべてが自動的に緑色に切り替わります。ボタンやリンク、アラートなども統一感をもって色が変わるので、テーマ再設計が非常に楽になります。

4. 実際にテーマカラーを変更してみよう

4. 実際にテーマカラーを変更してみよう
4. 実際にテーマカラーを変更してみよう

では、実際にテーマカラーを変更したときのイメージを見てみましょう。以下の例では、h1見出しの色を「primary」にして、Sassの設定を変えることで色が変化します。


<style>
	h1 {
	    color: #0d6efd; /* Bootstrapのprimary色(青) */
	}
</style>

<h1>これはPrimaryカラーの見出しです</h1>

<style>
	h1 {
	    color: #28a745; /* primaryを緑に変更した場合 */
	}
</style>

<h1>これはPrimaryカラーを変更した見出しです</h1>

5. Bootstrap5でのカラー拡張と独自テーマ作成

5. Bootstrap5でのカラー拡張と独自テーマ作成
5. Bootstrap5でのカラー拡張と独自テーマ作成

Bootstrap5では、既存のカラーだけでなく独自の色を追加することも簡単になりました。たとえば「brand」という名前のオリジナルカラーをテーマに追加する場合、次のようにマップに組み込みます。


$theme-colors: map-merge(
  $theme-colors,
  (
    "brand": #663399
  )
);

この設定を行うと、クラスに「bg-brand」や「text-brand」と書くだけで、サイト全体にオリジナルの色を使えるようになります。初心者でも「自分だけのテーマ」を作りやすくなったのが大きなポイントです。

6. Sass変数・マップ変更点のメリット

6. Sass変数・マップ変更点のメリット
6. Sass変数・マップ変更点のメリット

最後に、Bootstrap5でSass変数とマップが変わったことで得られるメリットを整理しておきます。

  • 色の一元管理がしやすくなり、テーマ変更が簡単になる。
  • map-mergeを使えば部分的な変更や追加が可能。
  • 複数のデザインパターンを効率的に切り替えられる。
  • プロジェクト全体で統一感のあるカラー設計ができる。

この仕組みを理解すれば、Bootstrap5を使ったWebサイトのデザインがぐっと効率的になります。初心者の方でも、まずは「primary」「secondary」などの基本的なカラーを上書きして試してみると理解が深まります。

関連記事:
カテゴリの一覧へ
新着記事
CSSのダブルボーダーや点線・破線を完全ガイド!初心者でもわかるdotted・dashed・doubleの使い方
Bootstrapの$theme-colorsを拡張!ブランドカラー追加の完全ガイド【map-merge】
CSSの境界線を部分的に設定する方法を完全ガイド!初心者でもわかるborder-topなどの使い方
BootstrapのSass変数を完全ガイド!初心者でもわかる色・余白・フォント設定
人気記事
No.1
Java&Spring記事人気No1
CSSで文字の間隔を調整する方法!初心者でもわかるletter-spacingとword-spacingの使い方
No.2
Java&Spring記事人気No2
CSSのtext-alignの使い方完全ガイド!初心者でもわかる文字揃えの基本
No.3
Java&Spring記事人気No3
Bootstrap 3から5への一気移行ガイド!初心者でもわかる段階的リファクタリングの進め方
No.4
Java&Spring記事人気No4
CSSの文字間・単語間の調整と影の付け方を完全ガイド!初心者でもわかるテキスト装飾術