Menu
Coddy logo textTech

アクセントカラーとハイライト

CoddyのHTMLジャーニー「Practical Frontend」セクションの一部 — レッスン 14/35。

アクセントカラーは、ボタン、リンク、コールトゥアクション(CTA)セクション、ハイライトされたテキストなどの重要な要素を際立たせるのに役立ちます。これらはCSS変数(--primary-color--accent-color--highlight-color)として定義し、サイト全体で一貫して使用できます。ホバー状態やハイライトにもこれらの変数を使用できるため、主要なコンテンツに注目を集めつつ、視覚的に魅力的で統一感のあるテーマを簡単に作成できます。

アクセントカラー用のCSS変数を作成します:

:root {
  --accent-color: #ff6b6b;
}

ボタンなどの重要なインタラクティブ要素にはアクセントカラーを使用します:

.button-primary {
  background-color: var(--accent-color);
  color: white;
}

アクセントカラーを使用して、アクティブなナビゲーションアイテムをハイライトします:

.nav-item.active {
  color: var(--accent-color);
  border-bottom: 2px solid var(--accent-color);
}
challenge icon

チャレンジ

簡単

あなたのタスク: 

  1. CSS変数 --accent-color を使用してアクセントカラーを設定してください。
  2. ページ上のすべてのボタンにアクセントカラーを適用してください。
  3. ボタンのホバー状態(hover state)をプライマリカラーに変更してください。
  4. 一貫性を持たせるために、リンク、ハイライトされたテキスト、およびフッターのリンクにアクセントカラーを適用してください。

チートシート

アクセントカラーは、重要な要素を際立たせるのに役立ちます。これらをCSS変数として定義し、サイト全体で一貫して使用しましょう。

アクセントカラー用のCSS変数を作成します:

:root {
  --accent-color: #ff6b6b;
}

ボタンにアクセントカラーを使用します:

.button-primary {
  background-color: var(--accent-color);
  color: white;
}

アクティブなナビゲーション項目をハイライトします:

.nav-item.active {
  color: var(--accent-color);
  border-bottom: 2px solid var(--accent-color);
}

自分で試してみよう

<!DOCTYPE html>
<html>
<head>
  <title>Accent Colors & Highlighting</title>
  <style>
    :root {
      --primary-color: #1e90ff;
      --text-color: #222;
      --bg-color: #f9f9f9;
      
    }

    body {
      font-family: sans-serif;
      margin: 0;
      padding: 0;
      background-color: var(--bg-color);
      color: var(--text-color);
    }

    header {
      background-color: var(--primary-color);
      color: white;
      padding: 1rem;
      text-align: center;
    }

    main {
      padding: 2rem;
      display: grid;
      gap: 1.5rem;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }

    .card {
      background-color: white;
      padding: 1rem;
      border-radius: 8px;
      box-shadow: 0 4px 8px rgba(0,0,0,0.1);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .card h2 {
      margin-top: 0;
      color: var(--primary-color);
    }

    .card button {
      color: white;
      border: none;
      padding: 0.5rem 1rem;
      border-radius: 5px;
      cursor: pointer;
    }

    a {
      text-decoration: none;
    }

    a:hover {
      text-decoration: underline;
    }

    .highlight {
      color: white;
      padding: 0 4px;
      border-radius: 3px;
    }

    footer {
      background-color: #222;
      color: white;
      text-align: center;
      padding: 1rem;
      margin-top: 2rem;
    }

    footer a {
      margin: 0 0.5rem;
    }
  </style>
</head>
<body>
  <header>
    <h1>Summer Music Festival</h1>
    <p>Experience <span class="highlight">unforgettable</span> music and vibes all summer long!</p>
  </header>

  <main>
    <div class="card">
      <h2>Rock Stage</h2>
      <p>Join the rock legends for an unforgettable night of music! <a href="#">More info</a></p>
      <button>Learn More</button>
    </div>

    <div class="card">
      <h2>Jazz Stage</h2>
      <p>Relax with smooth jazz performances under the open sky. <a href="#">Schedule</a></p>
      <button>Learn More</button>
    </div>

    <div class="card">
      <h2>EDM Stage</h2>
      <p>Dance all night with top DJs spinning the hottest tracks. <a href="#">Lineup</a></p>
      <button>Learn More</button>
    </div>
  </main>

  <footer>
    <p>Follow us on <a href="#">Instagram</a> | <a href="#">Facebook</a> | <a href="#">Twitter</a></p>
  </footer>
</body>
</html>
quiz icon腕試し

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

Practical Frontendのすべてのレッスン