9月更新・前月(8月)の人気記事トップ10 09/02/2024
- ( 01 – ) 【Labs】position:absoluteとwidth:100%を指定すると横幅の設定がうまくいかない場合の対処方法について
- ( 07 ↑) 【Mac】macOSをHigh SierraからMontereyにアップグレード
- ( 03 – ) 【Mac】横画面で撮影した動画をYouTubeショート用にMacのiMovieで縦画面に編集する方法
- ( 10 ↑) 【iPhone / iPad】iPhoneのツイッターアプリでユーザー名をコピーする方法
- (圏外↑) 【Labs】CSSだけでドロップダウンメニュー
- ( 02 ↓) 【jQuery】入門2. jQueryをHTMLに組み込む
- ( 09 ↑) 【Mac】Safariでソースコードを見る方法
- ( 04 ↓) 【jQuery】入門7. jQueryで新しいWindowを開く
- ( 06 ↓) 【2024年5月】iPad画面解像度まとめ
- (圏外↑) 【GIMP】レイヤーをロック
【Labs】CSSでも変数が使えるって知ってました!?
こんにちは(・∀・)
SassやLESS、または他のプログラムのようにCSSでも変数を使用することができます。
今日はSassやLESSではなく、CSS変数の使用方法をご紹介します。
CSS変数
変数を宣言する場合の記述ルールは「--」から始まり任意の変数名をコロンで区切って値を記述します。
E {
--hogehoge: lightblue;
}
変数を使用する場合はプロパティー、コロン区切り、値の先頭に「var」を記述して「()」内に変数名を記述します。
E {
background-color: var(--hogehoge);
}
変数の定義
変数を宣言します。
変数は各セレクターに記述することができます。
E {
--hogehoge: lightblue;
}
変数を呼び出す
変数を使用します。
E {
background-color: var(--hogehoge);
}
「:root」擬似クラスで変数を宣言してグローバル変数のように使用することでより使いやすくなります。
:root {
--hogehoge: lightblue;
}
E {
background-color: var(--hogehoge);
}
CSS変数は変数の中で変数を使うこともできます。
:root {
--bg-1: lightblue;
--bg-2: lightpink;
--bg-3: linear-gradient(90deg, var(--bg-1) 0%, var(--bg-2) 100%) fixed;
}
E {
background-color: var(--bg-3);
}
「bg-3」の値に変数「bg-1」と「bg-2」を使用しています。
サンプルデモ
Result
スマホでのご確認はこちらをどうぞ
CSS変数が取得できなかった場合に備えてフォールバックを指定することもできます。
E {
color: var(--hoge, olive);
}
この指定をしておくことで変数「--hoge」が無効の場合、代替値「olive」が適用されます。
JavaScriptでCSS変数を受け取る
JavaScriptの「getPropertyValue()」でCSS変数を受け取ることもできます。
getPropertyValue('--hoge')
CSS変数を使用する上での注意点
最後にCSS変数を使用する上での注意点をご紹介します。
- CSS変数では大文字と小文字は区別され別変数と認識される
--HOGE: 16px
--hoge: 12px - 変数は値のみ使用することができ、プロパティーは使用できない
❌
E {
--hoge: font-size;
var(--hoge): 16px;
} - 変数を呼び出す際、変数名以外の記述があると無効
❌
E {
--hoge: 16;
font-size: var(--hoge)px;
}
⭕️
E {
--hoge: 16px;
font-size: var(--hoge);
} - IE非対応