Menu
CoddyTech

バッジ

CoddyのHTMLジャーニー「実践的フロントエンド」セクションの一部。レッスン 22/35。

バッジは、別の要素の横に件数やステータスを表示するための小さなインジケーターです。例:未読メッセージ数を示す数字入りの赤い丸。多くの場合、ボタン、アイコン、プロフィール写真に付けられます。

重要な理由:

  • 重要な情報(通知など)をすぐに確認できるようにします。
  • アプリ、ソーシャルメディア、eコマースサイトでよく使われます。 

シンプルなバッジを作成しましょう。

まず、バッジを格納する基本的な HTML 要素を作成します。

<button class="btn">
  Messages <span class="badge">5</span>
</button>

次に、バッジのスタイルを設定する基本的な CSS を追加します。

.btn {
  position: relative;
  padding: 10px 20px;
  font-size: 16px;
}

.badge {
  position: absolute;
  top: -5px;
  right: -10px;
  background: red;
  color: white;
  border-radius: 50%;
  padding: 4px 8px;
  font-size: 12px;
}

これにより、ボタンの隅にメッセージ数を示すバッジが表示されます。

challenge icon

チャレンジ

簡単

いくつかのボタンを含むHTMLが与えられています。CSSだけを使って、各ボタンの右上隅に表示されるバッジを作成してください。作業内容:

  1. バッジの位置を設定する: position: absoluteを使うと、ボタンを基準に配置できます。
  2. 右上隅に配置する: topとrightに負の値を使います。
  3. 色とテキストを設定する: 赤い背景と白いテキストを使います。
  4. フォントとパディングを調整する: font-size: 12px; font-weight: bold; padding: 4px 7px;を設定します。
  5. 円形にして立体感を加える: border-radiusと小さなボックスシャドウ(box-shadow: 0 2px 4px rgba(0,0,0,0.2))を使います。

自分で試してみよう

<!DOCTYPE html>
<html>
<head>
  <title>Badges</title>
  <style>
    body {
      font-family: Arial, sans-serif;
      padding: 40px;
      background-color: #f5f5f5;
      display: flex;
      gap: 20px;
    }

    .button {
      position: relative; /* needed for badge positioning */
      padding: 12px 25px;
      font-size: 16px;
      border: none;
      border-radius: 8px;
      background-color: #4cafef;
      color: white;
      cursor: pointer;
    }

    .button:hover {
      background-color: #3a92d8;
    }

    .badge {
      
    }
  </style>
</head>
<body>

  <button class="button">
    Messages
    <span class="badge">5</span>
  </button>

  <button class="button">
    Notifications
    <span class="badge">!</span>
  </button>

  <button class="button">
    Cart
    <span class="badge">3</span>
  </button>

</body>
</html>
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

実践的フロントエンドのすべてのレッスン

自分で練習してみよう: Webプレイグラウンド