Bootstrap ナビゲーションバー

 

Bootstrap ナビゲーションバー

この記事では、Bootstrap 5 でレスポンシブなナビゲーションバーを作成およびカスタマイズする方法について説明します。

1. ナビゲーションバー基礎 (Navbar basics)

基本的なナビゲーションバーを作成するには、以下の定義済み CSS クラスを使用します。

  • .navbar: ナビゲーションバーのコンテナ
  • .navbar-brand: ナビゲーションバーのブランド名またはロゴ
  • .navbar-nav: ナビゲーションリンクのコンテナ
  • .nav-link: ナビゲーションリンク

また、カラースキーム(.navbar-light.navbar-dark)と背景カラースキーム(.bg-light.bg-dark.bg-primary など)を使用して、ナビゲーションバーの外観をカスタマイズすることもできます。

<nav class="navbar navbar-light bg-light">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">ブランド名</a>
    <ul class="navbar-nav">
      <li class="nav-item">
        <a class="nav-link active" aria-current="page" href="#">ホーム</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">リンク</a>
      </li>
    </ul>
  </div>
</nav>

2. ブランド (Brand)

.navbar-brand クラスを使用して、ナビゲーションバーのブランド名またはロゴをカスタマイズできます。ブランドに画像を追加するには、<img> タグを使用します。

<a class="navbar-brand" href="#">
  <img src="logo.png" alt="ロゴ" width="30" height="24">
</a>

3. リンク (Links)

.nav-link クラスを使用してナビゲーションリンクを作成します。.active クラスを使用して現在のページを示し、.disabled クラスを使用してリンクを無効にします。

<a class="nav-link active" aria-current="page" href="#">アクティブ</a>
<a class="nav-link" href="#">リンク</a>
<a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">無効</a>

4. フォーム (Forms)

.form-inline クラスを使用して、ナビゲーションバーに検索ボックスなどのフォーム要素を追加できます。

<form class="d-flex">
  <input class="form-control me-2" type="search" placeholder="検索" aria-label="検索">
  <button class="btn btn-outline-success" type="submit">検索</button>
</form>

5. テキスト (Text)

.navbar-text クラスを使用して、ナビゲーションバーにプレーンテキストコンテンツを追加できます。

<span class="navbar-text">
  ナビゲーションバーのテキスト
</span>

6. カラースキーム (Color schemes)

カラースキーム(.navbar-light.navbar-dark)と背景カラースキーム(.bg-light.bg-dark.bg-primary など)を使用して、ナビゲーションバーの外観をカスタマイズできます。詳細については、Bootstrap ドキュメントを参照してください。

7. コンテナ (Containers)

.container および .container-fluid クラスを使用して、ナビゲーションバーの幅を制御できます。詳細については、Bootstrap ドキュメントを参照してください。

8. 配置 (Placement)

.fixed-top.fixed-bottom、および .sticky-top クラスを使用して、ビューポート内のナビゲーションバーの位置を制御できます。詳細については、Bootstrap ドキュメントを参照してください。

9. レスポンシブ動作 (Responsive behaviors)

.navbar-toggler.navbar-collapse、および .navbar-expand-* クラスを使用して、小さなデバイスで折り畳むレスポンシブなナビゲーションバーを作成できます。詳細については、Bootstrap ドキュメントを参照してください。

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">ブランド名</a>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="ナビゲーションの切替">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNav">
      <ul class="navbar-nav">
        <li class="nav-item">
          <a class="nav-link active" aria-current="page" href="#">ホーム</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">リンク</a>
        </li>
      </ul>
    </div>
  </div>
</nav>

10. JavaScript の動作 (JavaScript behavior)

.collapse クラスと data-bs-toggle="collapse"data-bs-target="#navbarNav" 属性は、ナビゲーションバーの折りたたみ動作を制御するために使用されます。詳細については、Bootstrap ドキュメントを参照してください。

11. アクセシビリティ (Accessibility)

スクリーンリーダーのユーザー向けに、ナビゲーションバーをアクセス可能にするための考慮事項がいくつかあります。詳細については、Bootstrap ドキュメントを参照してください。

よくある質問

  1. ナビゲーションバーの色を変更するにはどうすればよいですか?

    カラースキームクラス(.navbar-light または .navbar-dark)と背景ユーティリティクラス(.bg-*)を使用します。詳細については、Bootstrap ドキュメントを参照してください。

  2. ナビゲーションバーをページの上部に固定するにはどうすればよいですか?

    .fixed-top クラスをナビゲーションバーに追加します。詳細については、Bootstrap ドキュメントを参照してください。

  3. ナビゲーションバーにドロップダウンメニューを追加するにはどうすればよいですか?

    ドロップダウンメニューを作成するには、ドロップダウンコンポーネントを使用します。詳細については、Bootstrap ドキュメントを参照してください。