:rootでコードの煩雑化を防ぐ

:rootでコードの煩雑化を防ぐ
Image by Gerd Altmann from Pixabay

2021.05.29(更新日:2021.05.29)

CSSでJSの様に「変数」的に値を使えたら便利だと思いませんか?
あっちこっち同じ値を入れてあるコードなら、なおさらそう思うのが人情というもの。
それが1発で変更出来るので素敵です。

この記事は1年以上経過しています。内容的に古い場合があります。

CSSの擬似クラス「root」

例えばタイトルに色を付けたりする場合、統一感を持たせるため同じ色を付けることはよくある。
その場合それぞれのセレクタ「プロパティ:値」をに付けなきゃならない。
CSSが複雑になると指定場所も見つかりにくくなる訳で、修正時なんか「忘れてた!」となるのが落ち。

そんな時はこのプロパティを使うと幸せになると言うお話。

CSS冒頭に書いとく

/* CSS例 */
:root {
  --my-color: #ff0000;
  --my-padding: 10px 20px;
}
/* この値を使いたいセレクタ例 */
h1 { color: var(--my-color); }
h2 { color: var(--my-color); }
p { padding: var(--my-padding); }

使い方はグローバル変数を設定するみたいに宣言し、「--」を頭に付けたプロパティを設定するだけ。
その値を使いたい部分で「var」のカッコ内にそのプロパティを入れれば反映される。>

実はすっかりこのセレクタを忘れていたため、ちょっと反省。