msdn online Web Workshop / currentStyle Objectの翻訳
カスケードされた形式とグローバル・スタイルシート、インライン・スタイル、HTML属性によって指定されるオブジェクトのスタイルを表現する。
currentStyle
オブジェクトは要素のカスケードされたスタイルを返すが、style
オブジェクトは STYLE
属性を通して要素上のインラインに当てられたスタイルだけを返す。このため、currentStyle
オブジェクトを通して取り出されたスタイル値は、 style
オブジェクトを通して取り出されるスタイル値と異なるかも知れない。例えば、パラグラフ上でcolorプロパティが、インラインではなく、リンク又は埋め込みのスタイルシートだけで、設定されている場合、
object.style.color
が値を返さないのに対して、object.currentStyle.color
は値を返す。しかし、もし著述者が<P STYLE="color:'red'">
を指定する場合は、 currentStyle
と STYLE
の両オブジェクトとも値 red
を返す。
currentStyle
オブジェクトは、ページに当てられたスタイル設定を反映する値を返すが、値が取り出された時に何が表現されているかは反映しない。例えば"color:red; display:none"
を持つオブジェクトは、オブジェクトがページに表示されなくても、red
としてcurrentStyle.color
を返す。 currentStyle
オブジェクトは、その時、レンダリングの強制により影響を受けない。Exampleセクションの三番目の例はこの振る舞いを説明している。無効化されたスタイルシートもまた currentStyle
の値に影響しない。
返値の単位は、がオブジェクトを設定するのに使われるものと同じ単位である。例えば、もしオブジェクトの color
が、STYLE="color:'green'"
を使ったインラインとして設定されるなら、object.currentStyle.color
は、#00FF00
ではなくgreen
を返す。しかし、著述者によって設定されたオブジェクト値に現れる大文字の使用(capitalization:小文字を大文字化する)と余分な空白は、 currentStyle
オブジェクトがオブジェクト値を返すときには失われる。
currentStyle
オブジェクトは、スタイル規則でユーザー定義のプロパティをサポートする。Exampleセクションの二番目の例を見よ。
currentStyle
オブジェクトは非同期である。これは、スタイルが設定されることが出来ずその上直接問い合わせできないことを意味する(その代わり、古い値が返される)。このため、addImport
のようなメソッドで currentStyle
の期待される振る舞いを得るスクリプトに対しては、スクリプトは currentStyle
をチェックするメソッドや関数を呼び出す関数を含む必要がある。ページがロードされている間に現在のスタイルをチェックするスクリプトのためには、スクリプトは body
要素がロードされページが表示されるまで待たなければならず、さもないと currentStyle
の値が表示されているものを反映しないかも知れない。
このオブジェクトはインターネット・エクスプローラ 5のスクリプトで利用できる。