モジュール jdk.xml.dom
パッケージ org.w3c.dom.css

インタフェースCSS2Properties


public interface CSS2Properties
CSS2Propertiesインタフェースは、CSSStyleDeclaration内のプロパティを取得および設定するための便利なメカニズムを表します。 このインタフェースの属性は、CSS2で規定されているすべてのプロパティに対応します。 このインタフェースの属性を取得することは、CSSStyleDeclarationインタフェースのgetPropertyValueメソッドを呼び出すことと同じです。 このインタフェースの属性を設定することは、CSSStyleDeclarationインタフェースのsetPropertyメソッドを呼び出すことと同じです。

CSS2Propertiesインタフェースの実装には、仕様に準拠して実装されたCSSモジュールは必要ありません。 このインタフェースを実装していない実装の場合は、CSSStyleDeclarationインタフェースのインスタンスからCSS2Propertiesインタフェースにキャストするための、その言語に固有のメソッドを利用できることが期待されます。

このインタフェースを実装している実装の場合は、短縮形のプロパティに特有の構文を理解して、そのセマンティックスを適用できることが期待されます。たとえば、marginプロパティを設定した場合、実際には、ベースとなる実装によってmarginTopmarginRightmarginBottom、およびmarginLeftの各プロパティが設定される必要があります。

CSSの「短縮形」のプロパティを取り扱うときは、その構成要素である正式表記のプロパティに分解する必要があります。また、その値が照会されたときは、ルール・セット内での宣言に正確に一致する最短の形式で値を返す必要があります。 ただし、短縮形の宣言を追加する際、ルール・セット内ですでに宣言されているルールをなんらかの形で変更する(ルール・セット内でまだ宣言されていない正式表記のルールを追加する)必要がある場合には、その短縮形のプロパティに対して空の文字列を返してください。

たとえば、fontプロパティが照会された場合、"14pt Arial, sans-serif"で十分なときは、"normal normal normal 14pt/normal Arial, sans-serif"を返すべきではありません。 「normal」という値は初期値であり、正式表記のプロパティを使用した場合に暗黙に指定されるからです。

特定の文字列を構成する正式表記のプロパティの値がすべて初期値である場合は、すべての初期値が含まれる文字列を返すべきです。たとえば、border-widthの値としては""ではなく、"medium"を返すべきです。

欠落している値を反対側の辺から取得する一部の短縮形のプロパティ(marginpaddingborder-[width|style|color]など)については、辺の数を最小限にするべきです。つまり、"0px 10px 0px 10px"ではなく、"0px 10px"を返します。

"menu"という値を持つfontプロパティの場合のように、短縮形のプロパティの値を、その構成要素である正式表記のプロパティに分解できない場合には、構成要素である正式表記のプロパティの値が照会されたときに、空の文字列を返すべきです。

Document Object Model (DOM) Level 2 Style Specification」も参照してください。

導入されたバージョン:
1.4、DOMレベル2