Menu
Coddy logo textTech

CSS変数の使用

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

CSS変数(カスタムプロパティとも呼ばれます)を使用すると、値を名前で保存し、CSS全体で再利用できます。
変数は、次の構文を使用してセレクター内で宣言されます(ページ上のどこでも変数が機能するように、一般的には :root が使用され、これはグローバルと呼ばれます)。

:root {
 --main-color: midnightblue;
 --padding: 16px;
}

変数に格納された値を使用するには、var() 関数を使用します。

.button {
  background-color: var(--main-color);
  padding: var(--padding);
}
challenge icon

チャレンジ

簡単

映画館で上映されているいくつかの映画を表示するウェブページがあります。各映画には Buy Ticket ボタンがあります。

あなたのタスク:

  1. :root セレクター内に --main-color という名前の CSS 変数を作成し、その値を seagreen に設定してください。
  2. その変数を使用して、ページ上のすべての <button> 要素の背景色を設定してください。

チートシート

CSS変数(カスタムプロパティ)を使用すると、値を名前で保存し、CSS全体で再利用できます。

変数は、--variable-name構文を使用してセレクター内で宣言されます。変数をグローバルにするには、:rootを使用します。

:root {
 --main-color: midnightblue;
 --padding: 16px;
}

変数を使用するには、var()関数を使用します。

.button {
  background-color: var(--main-color);
  padding: var(--padding);
}

自分で試してみよう

<html>
<head>
    <title>How to declare a variable</title>
    <style>
        :root {
            --bg-color: #4c87f5;
             /* Write CSS rules here */
             
          }
        body {
            font-family: Arial, sans-serif;
            background: var(--bg-color);
            padding: 20px;
          }
        .movie {
            background: white;
            padding: 15px;
            margin-bottom: 15px;
            border-radius: 8px;
          }
        .movie h2 {
            margin: 0 0 10px;
          }
        .movie p {
            margin: 0 0 10px;
          }
        button {
            color: black;
            border: none;
            padding: 8px 12px;
            border-radius: 4px;
            cursor: pointer;
             /* Write CSS rules here */
            
          }
    </style>
</head>
<body>
    <h1>Today's Movies</h1>
    <div class="movie">
      <h2>Ocean Whispers</h2>
      <p>A sailor discovers a hidden island and the secrets of the sea.</p>
      <button>Buy Ticket</button>
    </div>
    
    <div class="movie">
      <h2>Midnight Chase</h2>
      <p>A detective races against the clock to stop a mysterious heist.</p>
      <button>Buy Ticket</button>
    </div>
    
    <div class="movie">
      <h2>Starlight Bakery</h2>
      <p>A warm comedy about friendship and following your dreams.</p>
      <button>Buy Ticket</button>
</div>
</body>
</html>
quiz icon腕試し

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

Practical Frontendのすべてのレッスン