CSS カラー変数に不透明度を適用するにはどうすればよいですか?
P粉495955986
2023-08-24 00:12:47
<p>CSS 変数にアクセスできるように、Electron を使用してアプリを設計しています。 vars.css でカラー変数を定義しました。 </p>
<pre class="brush:css;toolbar:false;">:root {
--色: #f0f0f0;
}
</pre>
<p><code>main.css</code> でこの色を使用したいのですが、不透明度を適用します: </p>
<pre class="brush:css;toolbar:false;">#element {
背景: (何らかの不透明度で何らかの方法で var(--color) を使用します);
}
</pre>
<p>どうすればいいですか?プリプロセッサは使用せず、CSS のみを使用します。すべて CSS の回答を希望しますが、JavaScript/jQuery も受け入れます。 </p>
<p>使用している背景画像は透明であってはいけないため、<code>opacity</code> は使用できません。 </p>
既存のカラー値を取得して、それにアルファ チャネルを適用することはできません。つまり、既存の 16 進値 (
#f0f0f0
など) を取得し、それにアルファ コンポーネントを与え、その結果の値を別のプロパティで使用することはできません。ただし、カスタム プロパティを使用すると、
rgba()
で使用するために 16 進値を RGB トリプレットに変換し、値をカスタム プロパティ (カンマを含む) に保存できます。var()
関数を使用してrgba()
を目的のアルファ値に変換すると、機能します: