カテゴリ: Bootstrap 更新日: 2026/03/10

Bootstrapモーダルの基本実装を完全解説!data-bs-toggleとdata-bs-targetで簡単に開閉しよう

基本実装:data-bs-toggle="modal" と data-bs-target で開閉する手順
基本実装:data-bs-toggle="modal" と data-bs-target で開閉する手順

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

生徒

「Bootstrapのモーダルって、ボタンを押すと画面にポップアップが出るやつですよね?」

先生

「そうです。Bootstrapモーダルは、確認画面やお知らせを表示するためによく使われます。」

生徒

「JavaScriptを書かないと動かせないんですか?」

先生

「基本的な使い方なら、HTMLの属性を指定するだけで開閉できます。順番に見ていきましょう。」

1. Bootstrapのモーダルとは何かを知ろう

1. Bootstrapのモーダルとは何かを知ろう
1. Bootstrapのモーダルとは何かを知ろう

Bootstrapのモーダルとは、画面の上に重なって表示される小さなウィンドウのことです。たとえば「本当に削除しますか?」のような確認メッセージや、入力フォームを表示するときによく使われます。

パソコンを使っていると、突然画面の真ん中にメッセージが出てきて、背景が少し暗くなることがあります。それと同じ仕組みがBootstrapモーダルです。背景を操作できなくして、今表示している内容に集中させる役割があります。

2. data-bs-toggleとdata-bs-targetの役割

2. data-bs-toggleとdata-bs-targetの役割
2. data-bs-toggleとdata-bs-targetの役割

Bootstrapモーダルを開閉するときに重要なのが、data-bs-toggle と data-bs-target という2つの属性です。これらはHTMLタグの中に書くだけで動作します。

data-bs-toggleは「どんな機能を使うか」を指定します。モーダルの場合は modal と書きます。data-bs-targetは「どのモーダルを開くか」を指定するためのものです。

難しく感じるかもしれませんが、これは「このボタンを押したら、このモーダルを開いてください」と伝えているだけです。

3. ボタンをクリックしてモーダルを開く基本例

3. ボタンをクリックしてモーダルを開く基本例
3. ボタンをクリックしてモーダルを開く基本例

<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#sampleModal">
  モーダルを開く
</button>
ブラウザ表示

このコードでは、ボタンにdata-bs-toggleとdata-bs-targetが設定されています。#sampleModalは、後ほど作成するモーダルの名前です。シャープ記号は「idを指定します」という意味になります。

4. モーダル本体のHTML構造を理解しよう

4. モーダル本体のHTML構造を理解しよう
4. モーダル本体のHTML構造を理解しよう

<div class="modal fade" id="sampleModal" tabindex="-1">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title">お知らせ</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal"></button>
      </div>
      <div class="modal-body">
        <p>これはBootstrapのモーダルです。</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">閉じる</button>
      </div>
    </div>
  </div>
</div>
ブラウザ表示

モーダルは決まった入れ子構造になっています。箱の中に箱が入っているイメージです。modal-dialogは大きさを決める箱、modal-contentは実際の中身を入れる箱と考えると分かりやすいです。

5. モーダルを閉じる仕組みを理解する

5. モーダルを閉じる仕組みを理解する
5. モーダルを閉じる仕組みを理解する

<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">
  キャンセル
</button>
ブラウザ表示

モーダルを閉じるときは、data-bs-dismissという属性を使います。これは「このボタンを押したら閉じる」という意味です。

閉じる処理もJavaScriptを書かなくてよいので、初心者でも安心して使えます。

6. 複数のモーダルを使い分ける考え方

6. 複数のモーダルを使い分ける考え方
6. 複数のモーダルを使い分ける考え方

Bootstrapでは、複数のモーダルを使うこともできます。その場合は、それぞれ違うidを付けて、data-bs-targetで指定します。

これは「部屋番号が違うドアを開ける」ようなものです。正しい番号を指定しないと、開けたいモーダルは表示されません。

7. モーダルが動かないときのよくある原因

7. モーダルが動かないときのよくある原因
7. モーダルが動かないときのよくある原因

初心者の方がつまずきやすいのは、idの指定ミスです。data-bs-targetとモーダルのidが一致していないと、何も起こりません。

また、BootstrapのJavaScriptファイルが読み込まれていない場合も動作しません。HTMLが正しくても、裏側の仕組みが動いていないと表示されないので注意が必要です。

8. モーダルは確認や通知に便利なUI部品

8. モーダルは確認や通知に便利なUI部品
8. モーダルは確認や通知に便利なUI部品

Bootstrapモーダルは、ユーザーに大事な情報を伝えるための部品です。画面を切り替えずに表示できるため、操作の流れを止めにくいという特徴があります。

data-bs-toggleとdata-bs-targetを使った基本実装を覚えておけば、多くの場面で活用できます。まずはシンプルな構造を理解することが大切です。

2026年最新 スキルアップ・実践セミナー

【60分集中】CSSを1行も書かない!?Bootstrap 5ユーティリティクラス活用で開発工数を50%削減

「スピード」が武器になる。Bootstrap 5で商用クオリティのWebサイトを高速構築。

本講座では、世界シェアNo.1のフレームワークBootstrap 5を使いこなし、ゼロからレスポンシブサイトを組み上げる「現場最速のワークフロー」を学びます。単なる導入に留まらず、ユーティリティクラスを活用した効率化と、実務で必須となるカスタマイズ技法を60分で完全習得します。

具体的なワークショップ内容と環境

【つくるもの】
モダンなランディングページ(LP)やダッシュボードのプロトタイプを作成します。ナビゲーション、ヒーローセクション、カードレイアウト、フッターなど、Bootstrapのコンポーネントを組み合わせて「一瞬で形にする」感動を体験してください。

【開発環境】
VS CodeにBootstrap 5専用のSnippet(補完機能)を導入し、手入力を最小限にする環境を構築。最新のCDN利用法や、表示速度(Core Web Vitals)を意識した最適な読み込み設定など、プロの初期設定を伝授します。

この60分で得られる3つの革新スキル

1. グリッドシステムの完全マスター

スマホ・タブレット・PCでレイアウトを自由自在に切り替える「ブレイクポイント」の極意を学びます。

2. ユーティリティクラスによる爆速デザイン

CSSを1行も書かずに、マージン・パディング・カラーを制御。開発工数を半分以下にする実戦術を習得します。

3. 脱・標準デザインのカスタマイズ

「Bootstrap感」を消し、独自のブランドイメージに合わせるための、上書きの作法とデザインの整え方を伝授します。

※本講座は、HTML/CSSの基本を理解した方向けの「実践加速講座」です。制作会社のコーダーや副業フリーランスとして「案件の回転率」を上げ、市場価値を最大化させたい方をモクモクがバックアップします。

【60分集中】CSSを1行も書かない!?Bootstrap 5ユーティリティクラス活用で開発工数を50%削減

Bootstrap 5を楽しみながら、一緒に学びましょう!

各回少人数・マンツーマン形式で徹底サポート

このセミナーの詳細・お申し込みはこちら
カテゴリの一覧へ
新着記事
New1
Bootstrap
Bootstrapオフキャンバス入門:.offcanvasと.offcanvas-start・end・top・bottomの基本をやさしく解説
New2
CSS
CSSのoverflowプロパティ完全ガイド!初心者でもわかるvisible・hidden・scroll・autoの違い
New3
CSS
CSSのボックス整列を完全ガイド!初心者でもわかるvertical-alignの使い方
New4
CSS
CSSのtransitionを徹底解説!アニメーションの基本書式と適用方法
人気記事
No.1
Java&Spring記事人気No1
CSS
CSSで文字の間隔を調整する方法!初心者でもわかるletter-spacingとword-spacingの使い方
No.2
Java&Spring記事人気No2
CSS
CSSで要素のサイズを自動調整!autoとfit-contentの使い方
No.3
Java&Spring記事人気No3
CSS
CSSのmarginとpaddingの違いとは?初心者でもわかるボックス間のスペース調整の基本
No.4
Java&Spring記事人気No4
CSS
CSSのoverflowプロパティ完全ガイド!初心者でもわかるvisible・hidden・scroll・autoの違い
No.5
Java&Spring記事人気No5
CSS
CSSの文字色と背景色をやさしく解説!初心者でもわかる基本の設定方法
No.6
Java&Spring記事人気No6
HTML
HTMLのliタグとは?初心者でもわかるul・ol内での正しい役割を完全解説
No.7
Java&Spring記事人気No7
Bootstrap
Bootstrap Iconsのライセンスと商用利用の注意点【著作権と表記を初心者向けに解説】
No.8
Java&Spring記事人気No8
CSS
CSSの状態によるセレクタ完全ガイド!初心者でもわかる:checkedと:disabledの使い方