テキストと同じ色の影を持つボックスのスタイルを作成しようとしています。いくつかのボックスがあり、それぞれテキストの色が異なるため、すべてのボックスの個々のルールセットで同じ色を繰り返さないようにしたいと考えています。
現在、Backgrounds and Borders モジュールの状態は次のとおりですbox-shadow
(これは にも適用されますtext-shadow
)。
どこ
<shadow> = inset? && [ <length>{2,4} && <color>? ]
それぞれのコンポーネントは
<shadow>
次のように解釈されます。
...
色は影の色です。色が指定されていない場合、使用される色は「color」プロパティから取得されます。1
これは、特定の要素で影の色を指定しない場合、使用される影の色は、その要素に対して計算されたテキストの色から取得する必要があることを意味します。これは、明示的な色のない境界線に関連付けられた動作に似ており、 CSS1までさかのぼり、 CSS2でも変更されていません。
ただし、これが影の場合に常に当てはまるとは限らないことは承知しています。以前 (2011 年までは!)、選択された色は、Text モジュールと B&B モジュールの両方で決定するブラウザに任されていました。実際、過去のテストでは、シャドウ スタイルblack
を選択するブラウザと選択するブラウザ (または完全に無視するブラウザ) があったことを思い出します。transparent
これは と の間で変化した可能性さえtext-shadow
ありbox-shadow
ます。もちろん、これは理解できます。なぜなら、前述のように、その時点でブラウザーが選択した色はどれでも問題なかったからです。
しかし、定義が明示され、すべてのブラウザの最新バージョンにも変更が反映された今、古いバージョンを追随させるために何かできることはありますか? 色を複数回 (テキストに対して 1 回、影ごとに 1 回) 指定できることはわかっていますが、前述のように、可能であればそれは避けたいと思います。
1 この記事の執筆時点で最新の 2012 年半ばの WD では、同じセクションの以前の声明がここで引用されたものと矛盾していますが、ここで引用された声明は正規のものです。このメーリング リストのスレッドと、これが修正されたEDを参照してください。