変数の変数の値がもう1つの変数になることは可能ですか?別の変数内の変数
:root {
--theme-primary: --color-red;
--color-red: #F44336;
}
...または:このよう
:root {
--theme-primary: var(--color-red);
--color-red: #F44336;
}
可能な場合は、コードが可能としてJS を使用せずに、何ですか?
変数の変数の値がもう1つの変数になることは可能ですか?別の変数内の変数
:root {
--theme-primary: --color-red;
--color-red: #F44336;
}
...または:このよう
:root {
--theme-primary: var(--color-red);
--color-red: #F44336;
}
可能な場合は、コードが可能としてJS を使用せずに、何ですか?
可能です。次の例では、変数--theme-primary
は--color-yellow
の値を取得します。可能でない場合(変数--color-yellow
が定義されていないか、有効でない)、--theme-primary
は黒(#000
)になります。
:root {
--theme-primary: var(--color-yellow, #000);
--color-yellow: yellow;
--color-blue: blue;
}
:root {
--theme-secondary: var(--color-blue);
}
div {
background: var(--theme-primary, green);
border:5px dashed var(--theme-secondary, white);
height:100px;
width:100px;
}
<div>Hello World</div>
また、フォールバックとして変数(val
の2番目のパラメータ)を使用することができます。だから、var(--theme-primary, var(--theme-secondary, white));
追加リンクのような何かを行うことができます:
- ブラウザのサポートを私は使用することができます上:
http://caniuse.com/#feat=css-variables- をMozillaの開発者ネットワーク上のCSS変数を使用:
https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_variables- W3Cの仕様:
https://www.w3.org/TR/css-variables-1/
私の主要なブラウザはFirefoxで、最新バージョンを実行しています。そして、私はすべての主要なブラウザがそれをサポートしていると確信しています。 –
Hmmm ...私は 'var()'の "第2の値"が何であったのか少し不思議です。変数に何らかのエラーがある場合、フォールバックの値ですか? –
@LloydDominic - そうです!最初のパラメータが失敗すると、2番目のパラメータが有効になります。上記の例では、フォールバックは使用されていないので、最初のパラメータは正常に使用されています。 –
[CSS変数](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_variables)新しいの一種であるので、私は、それを聞いていない人のためのリンクを追加するだけです。 – ArneHugo