カスタムプロパティの宣言と使用
--接頭辞でCSSカスタムプロパティを定義し、var()関数で利用します。
「カスタムプロパティの宣言と使用」はCoddyKit上の無料CSS Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCSS Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 CSS Academyコースには全4レッスンが含まれています。
CSSカスタムプロパティとは
CSSのカスタムプロパティ(CSS変数とも呼ばれます)を使うと、値を一度定義し、スタイルシート全体で再利用できます。--name: valueという構文に従います。
カスタムプロパティの宣言
カスタムプロパティは任意の要素で宣言できます。:rootで宣言すると、グローバルに使用できます。
<div class="demo">Custom properties declared on :root</div>
var()関数の使用
var()関数を使ってカスタムプロパティを参照します。
<button>Styled Button</button>
カスタムプロパティは継承される
カスタムプロパティは通常のCSSの継承規則に従います。親要素で定義したプロパティは、上書きされない限りすべての子孫要素で使用できます。
<div class="card">
<div class="card__body">Inherits --card-bg from .card</div>
</div>
無効なカスタムプロパティ値
通常のCSSプロパティとは異なり、無効なカスタムプロパティ値を指定しても、その宣言が無視されることはありません。変数はその値のまま解決され、使用する側のプロパティによって有効かどうかが判断されます。
カスタムプロパティとSass変数の違い
主な違いは次のとおりです。
- CSSカスタムプロパティはブラウザー上で動的に有効であり、実行時に更新されます
- Sass変数はビルド時にコンパイルされて消えます
- カスタムプロパティはJavaScriptで変更できます
- カスタムプロパティはカスケードと継承に従います
命名規則
カスタムプロパティには、視覚的な値ではなく意味に基づいた名前を付けてください。後から簡単に更新できるようになります。
<p class="demo">Named --color-primary, --color-text, --size-spacing-sm</p>
グローバルスコープとコンポーネントスコープ
グローバルトークンは:rootで定義し、コンポーネント固有の値はコンポーネントのルートクラスで定義します。
<div class="card">Global font-size-base + component-scoped card vars</div>
calc()内のカスタムプロパティ
カスタムプロパティはcalc()内で使用できます。寸法の計算に使う場合は単位を含める必要があります。
<div class="nav">Navbar (var(--nav-height))</div>
<div class="main-content">Main content fills the rest via calc()</div>
レスポンシブなカスタムプロパティ
メディアクエリ内でカスタムプロパティの値を変更し、レスポンシブなトークンシステムを構築します。
<div class="section">Padding grows to 6rem on wide screens</div>
アニメーション用のカスタムプロパティ
複数の個別プロパティを変更する代わりに、カスタムプロパティ(多くの場合はJavaScript経由)の値を変更して要素をアニメーションさせます。
<div class="progress-track">
<div class="progress"></div>
</div>
確認問題
--accentという名前のグローバルCSSカスタムプロパティは、どのように宣言しますか?
まとめ
CSSカスタムプロパティは--name: valueで宣言し、var(--name)で使用します。グローバルトークンは:rootで宣言し、コンポーネントの値はコンポーネントセレクターのスコープに限定します。カスタムプロパティは実行時に有効で、カスケードを認識し、JavaScriptで変更できます。そのため、Sass変数よりもはるかに強力です。
よくある質問
「カスタムプロパティの宣言と使用」レッスンは無料ですか?
はい。「カスタムプロパティの宣言と使用」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、CSS Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 CSS Academyコースには全4レッスンが含まれています。
「カスタムプロパティの宣言と使用」で何を学びますか?
--接頭辞でCSSカスタムプロパティを定義し、var()関数で利用します。 ブラウザで直接実行するハンズオンコードでCSS Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
CSS Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCSS Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「カスタムプロパティの宣言と使用」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCSS Academyレッスンでコードを書いて実行できますか?
はい。すべてのCSS Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- カスタムプロパティの宣言と使用
- フォールバック値とvar()
- コンポーネントへの変数のスコープ設定
- JavaScriptによる変数の更新