作成方法:ドロップダウンメニューのナビゲーションバー

ドロップダウンメニューのナビゲーションバーの作成方法を学びます。

ナビゲーションバーのドロップダウンメニュー

実際に試してみてください

ドロップダウンメニューのナビゲーションバーを作成

ユーザーがナビゲーションバー内の要素にマウスを合わせると、ドロップダウンメニューが表示されます。

第1段 - HTMLを追加:

<div class="navbar">
  <a href="#home">ホーム</a>
  <a href="#news">ニュース</a>
  <div class="dropdown">
    <button class="dropbtn">ドロップダウン
      <i class="fa fa-caret-down"></i>
    </button>
    <div class="dropdown-content">
      <a href="#">リンク1</a>
      <a href="#">リンク2</a>
      <a href="#">リンク3</a>
    </div>
  </div>
</div>

例を説明します:

ドロップダウンを開くための要素を使用します。例:<button>、<a>、<p> 要素など。

コンテナ要素(例:<div>)を使用してドロップダウンメニューを作成し、その中にドロップダウンメニューのリンクを追加します。

ボタンと別の <div> 要素を <div> 要素で囲んで、CSSでドロップダウンメニューを正しく配置します。

第2段 - CSSを追加:

/* ナビゲーションバー容器 */
.navbar {
  overflow: hidden;
  background-color: #333;
  font-family: Arial;
}
/* ナビゲーションバー内のリンク */
.navbar a {
  float: left;
  font-size: 16px;
  color: white;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}
/* ドロップダウンコンテナ */
.dropdown {
  float: left;
  overflow: hidden;
}
/* ドロップダウンボタン */
.dropdown .dropbtn {
  font-size: 16px;
  border: none;
  outline: none;
  color: white;
  padding: 14px 16px;
  background-color: inherit;
  font-family: inherit; /* スマートフォン上での垂直アライメントに重要です */
  margin: 0; /* スマートフォンでの垂直アライメントに重要 */
}
/* マウスオーバー時にナビゲーションバーのリンクに赤い背景色を追加 */
.navbar a:hover, .dropdown:hover .dropbtn {
  background-color: red;
}
/* ドロップダウンメニューの内容(デフォルトで非表示) */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f9f9f9;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
}
/* ドロップダウンメニューのリンク */
.dropdown-content a {
  float: none;
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  text-align: left;
}
/* マウスオーバー時にドロップダウンメニューのリンクに灰色の背景色を追加 */
.dropdown-content a:hover {
  background-color: #ddd;
}
/* マウスオーバー時にドロップダウンメニューを表示 */
.dropdown:hover .dropdown-content {
  display: block;
}

実際に試してみてください

例を説明します:

ナビゲーションバーとナビゲーションバーのリンクの背景色、余白などのスタイルを設定しました。

ドロップダウンメニューのボタンの背景色、余白などのスタイルを設定しました。

.dropdown クラスは .dropdown-content のコンテナ。これは<a>要素ではなく<div>要素であるため、リンクの側に留まるようにフロートを設定する必要があります。

.dropdown-content クラスが実際のドロップダウンメニューを含んでいます。デフォルトでは非表示で、マウスオーバー時に表示されます(以下を参照)。注意して、最小幅を160pxに設定しています。任意で設定を変更してください。

境界線を使用せず、 box-shadow 属性を使用して、ドロップダウンメニューが「カード」のように見えます。さらに、 z-index ドロップダウンメニューを他の要素の前に配置します。

:hover ユーザーがマウスをドロップダウンメニューのボタンに合わせたときにドロップダウンメニューを表示するために、セレクタを使用します。

ナビゲーションバーのクリック可能なドロップダウンメニュー

実際に試してみてください

関連ページ

チュートリアル:CSSドロップダウンメニュー

チュートリアル:クリック可能なドロップダウンメニューを作成する方法

チュートリアル:CSSナビゲーションバー

チュートリアル:レスポンシブなトップナビゲーションバーを作成する方法