BootstrapのNavbarとオフキャンバスを組み合わせる方法を徹底解説 小画面でも快適なメニュー表示を実現
生徒
「スマートフォンでサイトを見たときに、メニューが横から出てくることがありますが、あれはどうやって作るのですか?」
先生
「それはBootstrapのオフキャンバスという機能を使うと簡単に作れます。」
生徒
「ナビゲーションバーと一緒に使うことはできますか?」
先生
「もちろんできます。小さい画面でも見やすいメニューが作れるので、とても便利ですよ。」
生徒
「ぜひ作り方を知りたいです。」
先生
「では、基本から順番に見ていきましょう。」
1. BootstrapのNavbarとオフキャンバスとは
Bootstrapとは、ホームページやウェブアプリケーションを効率よく作るためのデザインテンプレートです。ボタンやメニューなどを簡単に作ることができ、初心者でも整った画面を作りやすい特徴があります。
Navbarとは、画面の上部や側面に表示されるメニューのことです。サイト内のページ移動を行うための重要な役割を持っています。多くの企業サイトやブログで使用されており、利用者が迷わず操作できるようにするために必要な要素です。
オフキャンバスとは、画面の外側からスライドして表示されるメニューの仕組みです。スマートフォンやタブレットのような小さい画面では、通常のメニューを表示すると画面が狭くなります。そこでオフキャンバスを使用すると、必要なときだけメニューを表示できるため、画面を広く使うことができます。
BootstrapではNavbarとオフキャンバスを組み合わせることで、パソコンでは通常のメニュー表示、スマートフォンではスライド式メニューというように自動で切り替えることができます。これをレスポンシブデザインと呼びます。
2. 小画面でのメニュー体験が重要な理由
現在はスマートフォンからウェブサイトを閲覧する利用者が非常に多くなっています。もしスマートフォンでメニューが見づらい場合、利用者はすぐに別のサイトへ移動してしまう可能性があります。
小画面では表示できる情報量が限られているため、必要な情報を整理することが重要です。オフキャンバスメニューは、普段は隠れていてボタンを押したときだけ表示されるため、画面のスペースを有効に活用できます。
また、指で操作するスマートフォンでは、大きくて押しやすいボタンが求められます。Bootstrapのオフキャンバスは操作性にも優れているため、初心者でも使いやすいメニューを作成できます。
3. Navbarとオフキャンバスを組み合わせた基本構造
まずは基本的なNavbarとオフキャンバスの組み合わせを確認します。この構造を理解することで、応用的なメニューも作れるようになります。
<nav class="navbar navbar-dark bg-dark">
<div class="container-fluid">
<a class="navbar-brand" href="#">サンプルサイト</a>
<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#menu">
<span class="navbar-toggler-icon"></span>
</button>
<div class="offcanvas offcanvas-start" id="menu">
<div class="offcanvas-header">
<h5>メニュー</h5>
<button class="btn-close" data-bs-dismiss="offcanvas"></button>
</div>
<div class="offcanvas-body">
<ul class="navbar-nav">
<li class="nav-item"><a class="nav-link" href="#">ホーム</a></li>
<li class="nav-item"><a class="nav-link" href="#">サービス</a></li>
<li class="nav-item"><a class="nav-link" href="#">お問い合わせ</a></li>
</ul>
</div>
</div>
</div>
</nav>
ブラウザ表示
このコードではボタンを押すと、画面の左側からメニューが表示されます。navbar-togglerはメニューを開くボタンを作る役割を持ちます。offcanvasはスライドメニューの本体です。
4. 右側から表示するオフキャンバスメニュー
オフキャンバスは左側だけでなく、右側から表示することもできます。ショッピングサイトなどでは右側メニューを使うことが多く、操作性を高めることができます。
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">ショップ</a>
<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#rightMenu">
<span class="navbar-toggler-icon"></span>
</button>
<div class="offcanvas offcanvas-end" id="rightMenu">
<div class="offcanvas-header">
<h5>カテゴリ</h5>
<button class="btn-close" data-bs-dismiss="offcanvas"></button>
</div>
<div class="offcanvas-body">
<p>商品一覧やカテゴリーを配置できます。</p>
</div>
</div>
</div>
</nav>
ブラウザ表示
offcanvas-endという指定を行うことで、右側から表示されるメニューになります。画面設計に合わせて配置を変えることで、利用者が直感的に操作しやすくなります。
5. メニュー内に画像や情報を配置する方法
オフキャンバスメニューの中にはリンクだけでなく、画像や説明文を配置することもできます。商品紹介やプロフィール表示など、さまざまな用途に応用できます。
<div class="offcanvas offcanvas-start" id="infoMenu">
<div class="offcanvas-header">
<h5>プロフィール</h5>
<button class="btn-close" data-bs-dismiss="offcanvas"></button>
</div>
<div class="offcanvas-body text-center">
<img src="/img/sample120-120.jpg" class="img-fluid rounded-circle mb-3">
<p>ウェブ制作に関する情報を発信しています。</p>
<a href="#" class="btn btn-primary">詳細を見る</a>
</div>
</div>
ブラウザ表示
このように画像や文章を追加することで、単なるメニューだけでなく情報パネルとして利用できます。利用者に対して分かりやすく情報を伝えることが可能になります。
6. CSSを使ってオフキャンバスの見た目を変更する
Bootstrapには多くのデザインが用意されていますが、CSSを使えばさらに自由にカスタマイズできます。背景色や文字色を変更することで、サイトの雰囲気に合わせたデザインを作れます。
<style>
.offcanvas {
background-color: #222;
color: white;
}
.offcanvas a {
color: white;
}
</style>
<div class="offcanvas offcanvas-start show position-static">
<div class="offcanvas-body">
<a href="#">カスタムメニュー</a>
</div>
</div>
ブラウザ表示
このようにCSSを追加すると、メニューの背景色や文字色を自由に変更できます。サイト全体の統一感を出すために非常に重要な設定です。
7. オフキャンバスとレスポンシブ対応の関係
Bootstrapは画面サイズに応じて表示を自動調整する仕組みを持っています。パソコンでは通常のナビゲーションバーを表示し、スマートフォンではオフキャンバスメニューに切り替えることができます。
レスポンシブとは、画面の幅に合わせてレイアウトを変える仕組みです。利用者がどの端末からアクセスしても、見やすく操作しやすい画面を提供できます。
BootstrapのNavbarは、画面幅によってメニューを折りたたむ機能を持っています。この機能とオフキャンバスを組み合わせることで、小画面でも快適な操作が実現できます。
例えば企業サイトやブログでは、スマートフォン利用者が増加しているため、レスポンシブデザインは検索結果にも影響します。検索エンジンは利用者にとって使いやすいサイトを高く評価するため、SEO対策としても非常に重要です。
8. 初心者が理解しておきたいポイント
Navbarとオフキャンバスを使用する際は、メニューの内容を整理することが大切です。情報が多すぎると利用者が迷ってしまうため、必要な項目だけを表示するようにしましょう。
また、ボタンの位置やサイズも重要です。スマートフォンでは指で操作するため、小さすぎるボタンは操作しにくくなります。Bootstrapは操作しやすいサイズ設計になっているため、初心者でも安心して利用できます。
さらに、オフキャンバスメニューは画面を覆うため、閉じるボタンを必ず設置する必要があります。利用者が元の画面に戻れないと、サイトの使いやすさが低下します。
BootstrapのNavbarとオフキャンバスを正しく組み合わせることで、見た目だけでなく操作性にも優れたウェブサイトを作成できます。特にスマートフォン対応は現在のウェブ制作において必須となっており、多くの利用者に快適な閲覧環境を提供できます。
まとめ
ブートストラップナビゲーションバーオフキャンバスメニュー組合実装理解重要性学習内容総括現代閲覧環境多様化背景小型端末閲覧機会増加画面領域有効活用操作性向上利用者満足度向上直結設計思想理解不可欠ナビゲーションバー役割画面上部主要導線配置構造整理利用者目的到達補助情報体系整理中心要素存在価値非常高一方オフキャンバスメニュー画面外側収納必要時表示仕組採用小型画面閲覧時情報密度調整効果実現視認性維持操作容易性確保閲覧体験向上実装方法理解開発効率改善直結ブートストラップ提供標準機能活用簡潔記述可能構造化記述維持保守性向上共同開発環境有効活用可能ナビゲーショントグルボタン設置操作契機提供利用者直感操作促進オフキャンバス要素内部構造整理見出領域本体領域役割分担理解重要リンク配置情報説明配置画像掲載応用幅拡張実務利用可能性増大企業紹介商品案内利用者補助情報提示多目的利用可能設計柔軟性確保背景色文字色装飾指定統一感演出可能視覚印象改善利用者記憶定着貢献ブランド価値形成支援スタイル指定理解独自性創出不可欠レスポンシブ設計概念理解画面幅応表示自動変化現代閲覧環境適合不可欠技術利用者端末依存閲覧体験差異最小化提供価値最大化実現検索結果表示品質評価要素一部関連閲覧操作快適性評価基準影響与可能性存在情報設計段階利用者行動想定重要閲覧導線整理情報階層明確化必要情報優先配置不要情報整理閲覧効率改善直結操作対象領域大確保指操作容易性確保人体工学視点重要閉操作明示利用者迷防止閲覧継続率維持安全設計要素ブートストラップ構造理解将来拡張対応基盤形成開発経験蓄積応用設計可能設計思想理解保守作業効率改善複雑化防止効果教育段階基礎理解後高度応用容易到達利用者満足度向上開発者作業効率改善双方利益提供可能総合的設計指針理解重要知識体系習得長期的技術活用価値創出将来発展対応基盤形成可能継続学習重要実装経験蓄積理解深化促進多様画面構成対応可能技術者育成基盤形成情報伝達品質向上利用者信頼関係構築基礎形成可能
サンプルプログラム
ナビゲーションバーとオフキャンバスを組み合わせた実用的な構造例です。
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<a class="navbar-brand" href="#">学習サイト</a>
<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#mainMenu">
<span class="navbar-toggler-icon"></span>
</button>
<div class="offcanvas offcanvas-start" id="mainMenu">
<div class="offcanvas-header">
<h5 class="offcanvas-title">メニュー一覧</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas"></button>
</div>
<div class="offcanvas-body">
<ul class="navbar-nav">
<li class="nav-item"><a class="nav-link" href="#">ホーム</a></li>
<li class="nav-item"><a class="nav-link" href="#">サービス</a></li>
<li class="nav-item"><a class="nav-link" href="#">会社情報</a></li>
<li class="nav-item"><a class="nav-link" href="#">お問い合わせ</a></li>
</ul>
</div>
</div>
</div>
</nav>
ブラウザ表示
スタイル調整を行い視認性を改善した例です。
<style>
.offcanvas {
background-color: #111;
color: white;
}
.offcanvas .nav-link {
color: white;
font-weight: bold;
}
</style>
<div class="offcanvas offcanvas-start show position-static">
<div class="offcanvas-body">
<ul class="navbar-nav">
<li class="nav-item"><a class="nav-link" href="#">カスタム表示</a></li>
</ul>
</div>
</div>
ブラウザ表示
生徒
ナビゲーションバーとオフキャンバスメニューを組み合わせることで小さい画面でも操作しやすい構造を作れることが理解できました。
先生
とても大切な理解です。閲覧環境に応じて表示を変える設計は現代のウェブ制作では欠かせません。
生徒
オフキャンバスメニューは単なるリンク表示だけでなく画像や説明文も配置できる点が印象に残りました。
先生
その通りです。情報パネルとして活用することで利用者に分かりやすい導線を提供できます。
生徒
レスポンシブ対応が検索評価にも影響することも学びました。
先生
閲覧のしやすさは利用者満足度だけでなくサイト評価にも関係します。今回学んだ構造は多くの場面で役立ちます。
【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つの革新スキル
スマホ・タブレット・PCでレイアウトを自由自在に切り替える「ブレイクポイント」の極意を学びます。
CSSを1行も書かずに、マージン・パディング・カラーを制御。開発工数を半分以下にする実戦術を習得します。
「Bootstrap感」を消し、独自のブランドイメージに合わせるための、上書きの作法とデザインの整え方を伝授します。
※本講座は、HTML/CSSの基本を理解した方向けの「実践加速講座」です。制作会社のコーダーや副業フリーランスとして「案件の回転率」を上げ、市場価値を最大化させたい方をモクモクがバックアップします。
Bootstrap 5を楽しみながら、一緒に学びましょう!
各回少人数・マンツーマン形式で徹底サポート
このセミナーの詳細・お申し込みはこちら