CSS
 Computer >> コンピューター >  >> プログラミング >> CSS

CSSでナビゲーションバーに「その他」ボタン(ドロップダウンメニュー)を作成する方法

Webサイトのナビゲーションバーでは、主要なリンクだけを表示し、それ以外の項目を「その他(More)」ボタンの中にまとめてドロップダウンメニューとして表示するデザインがよく使われます。本記事では、HTMLとCSSだけでこの「その他」ボタンを実装する方法を解説します。

実装例

以下は、CSSを使用してナビゲーションバー内に「その他」ボタンを作成するコード例です。ボタンにマウスカーソルを合わせると、ドロップダウンメニューが展開される仕組みになっています。

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<style>
body{
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}
.menu-btn {
    background-color: #040008;
    color: white;
    padding: 16px;
    font-size: 34px;
    font-weight: bolder;
    border: none;
}
.dropdown-menu {
    position: relative;
    display: inline-block;
}
.menu-content {
    display: none;
    position: absolute;
    background-color: #017575;
    min-width: 160px;
    z-index: 1;
}
nav{
    background-color: #017575;
}
.links,.links-hidden{
    display: inline-block;
    color: rgb(255, 255, 255);
    padding: 12px 16px;
    text-decoration: none;
    font-size: 24px;
    font-weight: bold;
}
.links-hidden{
    display: block;
}
.links{
    display: inline-block;
}
.links-hidden:hover,.links:hover {
    background-color: rgb(8, 107, 46);
}
.dropdown-menu:hover .menu-content {
    display: block;
}
.dropdown-menu:hover .menu-btn {
    background-color: #3e8e41;
}
</style>
</head>
<body>
<h1>More button inside navigation bar example</h1>
<nav>
<a class="links" href="#">HOME</a>
<a class="links" href="#">EMPLOYEES</a>
<a class="links" href="#">CAREER</a>
<div class="dropdown-menu">
<button class="menu-btn">More <i class="fa fa-caret-down"></i></button>
<div class="menu-content">
<a class="links-hidden" href="#">Contact Us</a>
<a class="links-hidden" href="#">Visit Us</a>
<a class="links-hidden" href="#">About Us</a>
</div>
</div>
</nav>
</body>
</html>

コードのポイント

  • .dropdown-menu:ドロップダウン全体を包むコンテナです。position: relative を指定することで、メニューの表示位置の基準になります。
  • .menu-content:通常は display: none で非表示になっており、ホバー時に display: block へ切り替わることでメニューが表示されます。
  • :hover:ボタンにマウスカーソルを合わせたタイミングで、メニューの表示とボタンの背景色変更をまとめて制御しています。

出力結果

上記のコードを実行すると、以下のようなナビゲーションバーが表示されます。

CSSでナビゲーションバーに「その他」ボタン(ドロップダウンメニュー)を作成する方法

「その他」ボタンにマウスをホバーすると、ドロップダウンメニューが開きます。

CSSでナビゲーションバーに「その他」ボタン(ドロップダウンメニュー)を作成する方法

  1. CSSでチャットメッセージを作成する方法をわかりやすく解説

    CSSを使えば、LINEやMessengerのようなチャットメッセージ画面を簡単に作成できます。この記事では、プロフィール画像・吹き出し・タイムスタンプ付きのチャットUIを実装する方法を、実際のコード例とともに解説します。 コード例 以下は、CSSでチャットメッセージを作成するための完全なコードです。 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"> <s

  2. CSSだけで作る!レスポンシブ対応のセクションカウンターの実装方法

    CSSを使えば、JavaScriptに頼ることなく、ダウンロード数やパートナー数などの統計情報を視覚的にアピールする「セクションカウンター」を簡単に作成できます。ここでは、Font Awesomeのアイコンと組み合わせて、レスポンシブ対応のセクションカウンターを実装する方法を解説します。 実装コード例 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"> <l