[14] CSS の各特性には初期値が定義されています。 初期値は継承しない特性の値が明示的に指定されなかった場合や、 根要素の特性値が明示的に指定されなかった場合に用いられます。
[13] CSS の特性値の指定は、必ずしもすべての要素のすべての特性に対して明示的に与えられるわけではありません。 むしろほとんどすべての場合、指定されるのは一部の要素の一部の特性に対してのみです。 CSS ではレンダリングされる文書木上のすべての要素はすべての特性の値を持つことになっていますが、 それらの値の導出は次に示す指定値、算出値、使用値、実際値という概念によって規定されています。
[20] 次に指定値から算出値を得ます。 この過程で相対値は絶対値に解決されます。
[25] 算出値はその特性がその要素に適用されない場合も存在します。
em
や ex
の値は画素か絶対長を単位に変換します。inherit
なら、
親要素の算出値を算出値とします。
ただし根要素では初期値を算出値とします。expression()
はこの段階で評価されているものと推測されます。[22] CSS2 では算出値に相当する概念がありませんでしたが、 CSS 2.1 で算出値と使用値が分離されました。
currentStyle
[7] WinIE の currentStyle
属性の
CSSStyleDeclaration
物体から得られる値は、
指定値や算出値に近い何かです。
[8] 算出値を基に、実際のレンダリングに必要な計算を行ったのが使用値です。 例えば幅の百分率値を実際に使用する値に変換したものです。
[21] CSS2 では算出値と呼ばれていましたが、 CSS 2.1 で使用値に改められました。
[9] DOM2 の getComputedStyle
メソッドにより返される
CSSStyleDeclaration
物体から得られる値は、
使用値です。現実の Webブラウザーの実装上得られる値は、
使用値に近い何かです。
[23] offsetTop
、clientHeight
など
CSSOM View 系の属性から得られる値は、使用値に近い何かです。
[10] 使用値を実際に使用する環境の制限に応じて調整したのが実際値です。 例えば使用できる精度に合わせて使用値を四捨五入したものが実際値となります。
[35] カスケードは通常選択子の記述により、継承は通常要素の文書木上の構造に基づき行われますが、 いくつか特殊な扱いが求められるケースがあります。
[11] SMILアニメーションは cascading における上書きスタイル・シートの指定とみなされると規定されており、 指定値〜実際値の概念とは直交するものです。
-webkit-text-size-adjust
との関係は・・・[31] CSS の「値」とは何か - IT戦記 ( 版) http://d.hatena.ne.jp/amachang/20080409/1207756586
[34] SMIL Timesheets 1.0 ( ( 版)) http://www.w3.org/TR/2012/NOTE-timesheets-20120328/
[47] Remove <iframe seamless> · whatwg/html@1490eba ( 版) https://github.com/whatwg/html/commit/1490eba4dba5ab476f0981443a86c01acae01311
[48] Gloss the CSS term "used value" · whatwg/html@4a3a166 ( 版) https://github.com/whatwg/html/commit/4a3a166c554b6e6b8d04012ce18cd482f87edfd8