Wed, 21 Aug 2013 13:30:56 +0200
[cssom] Revert the changes to CSSStyleDeclaration since @page and margin at-rules use real properties. <http://www.w3.org/mid/52149C91.20407@exyr.org>
cssom/Overview.html | file | annotate | diff | comparison | revisions | |
cssom/Overview.src.html | file | annotate | diff | comparison | revisions |
1.1 --- a/cssom/Overview.html Wed Aug 21 10:29:36 2013 +0200 1.2 +++ b/cssom/Overview.html Wed Aug 21 13:30:56 2013 +0200 1.3 @@ -161,15 +161,12 @@ 1.4 <li><a href="#the-cssimportrule-interface"><span class="secno">6.4.5 </span>The <code title="">CSSImportRule</code> Interface</a></li> 1.5 <li><a href="#the-cssgroupingrule-interface"><span class="secno">6.4.6 </span>The <code title="">CSSGroupingRule</code> Interface</a></li> 1.6 <li><a href="#the-cssmediarule-interface"><span class="secno">6.4.7 </span>The <code title="">CSSMediaRule</code> Interface</a></li> 1.7 - <li><a href="#the-csspagedeclaration-interface"><span class="secno">6.4.8 </span>The <code title="">CSSPageDeclaration</code> Interface</a></li> 1.8 - <li><a href="#the-csspagerule-interface"><span class="secno">6.4.9 </span>The <code title="">CSSPageRule</code> Interface</a></li> 1.9 - <li><a href="#the-cssmargindeclaration-interface"><span class="secno">6.4.10 </span>The <code title="">CSSMarginDeclaration</code> Interface</a></li> 1.10 - <li><a href="#the-cssmarginrule-interface"><span class="secno">6.4.11 </span>The <code title="">CSSMarginRule</code> Interface</a></li> 1.11 - <li><a href="#the-cssnamespacerule-interface"><span class="secno">6.4.12 </span>The <code title="">CSSNamespaceRule</code> Interface</a></ul></li> 1.12 + <li><a href="#the-csspagerule-interface"><span class="secno">6.4.8 </span>The <code title="">CSSPageRule</code> Interface</a></li> 1.13 + <li><a href="#the-cssmarginrule-interface"><span class="secno">6.4.9 </span>The <code title="">CSSMarginRule</code> Interface</a></li> 1.14 + <li><a href="#the-cssnamespacerule-interface"><span class="secno">6.4.10 </span>The <code title="">CSSNamespaceRule</code> Interface</a></ul></li> 1.15 <li><a href="#css-declaration-blocks"><span class="secno">6.5 </span>CSS Declaration Blocks</a> 1.16 <ul class="toc"> 1.17 - <li><a href="#the-cssdeclaration-interface"><span class="secno">6.5.1 </span>The <code title="">CSSDeclaration</code> Interface</a></li> 1.18 - <li><a href="#the-cssstyledeclaration-interface"><span class="secno">6.5.2 </span>The <code title="">CSSStyleDeclaration</code> Interface</a></ul></li> 1.19 + <li><a href="#the-cssstyledeclaration-interface"><span class="secno">6.5.1 </span>The <code title="">CSSStyleDeclaration</code> Interface</a></ul></li> 1.20 <li><a href="#css-values"><span class="secno">6.6 </span>CSS Values</a> 1.21 <ul class="toc"> 1.22 <li><a href="#parsing-css-values"><span class="secno">6.6.1 </span>Parsing CSS Values</a></li> 1.23 @@ -1955,7 +1952,7 @@ 1.24 1.25 <pre class="idl">interface <dfn id="cssstylerule">CSSStyleRule</dfn> : <a href="#cssrule">CSSRule</a> { 1.26 attribute DOMString <a href="#dom-cssstylerule-selectortext" title="dom-CSSStyleRule-selectorText">selectorText</a>; 1.27 - [SameObject, PutForwards=<a href="#dom-cssdeclaration-csstext" title="dom-CSSDeclaration-cssText">cssText</a>] readonly attribute <a href="#cssstyledeclaration">CSSStyleDeclaration</a> <!-- 1.28 + [SameObject, PutForwards=<a href="#dom-cssstyledeclaration-csstext" title="dom-CSSStyleDeclaration-cssText">cssText</a>] readonly attribute <a href="#cssstyledeclaration">CSSStyleDeclaration</a> <!-- 1.29 --><a href="#dom-cssstylerule-style" title="dom-CSSStyleRule-style">style</a>; 1.30 };</pre> 1.31 1.32 @@ -2046,54 +2043,7 @@ 1.33 with the <code title="">@media</code> at-rule.</p> 1.34 1.35 1.36 -<h4 id="the-csspagedeclaration-interface"><span class="secno">6.4.8 </span>The <code title="">CSSPageDeclaration</code> Interface</h4> 1.37 - 1.38 -<p>The <code><a href="#csspagedeclaration">CSSPageDeclaration</a></code> interface represents the declarations in an <code title="">@page</code> at-rule. 1.39 - 1.40 -<pre class="idl">interface <dfn id="csspagedeclaration">CSSPageDeclaration</dfn> : <a href="#cssdeclaration">CSSDeclaration</a> { 1.41 -};</pre> 1.42 - 1.43 -<p>A <dfn id="css-page-context-property">CSS page context property</dfn> is a CSS property that applies within the page context according to the CSS Page specification. 1.44 -<a href="#refsCSSPAGE">[CSSPAGE]</a> 1.45 - 1.46 -<p>For each CSS property <var>property</var> that is a <a href="#css-page-context-property">CSS page context property</a>, the following partial interface applies where 1.47 -<var>camel-cased attribute</var> is obtained by running the <a href="#css-property-to-idl-attribute">CSS property to IDL attribute</a> algorithm for <var>property</var>.</p> 1.48 - 1.49 -<pre class="idl extract">partial interface <a href="#csspagedeclaration">CSSPageDeclaration</a> { 1.50 - attribute DOMString _<a href="#dom-csspagedeclaration-camel-cased-attribute" title="dom-CSSPageDeclaration-camel-cased-attribute"><var>camel-cased attribute</var></a>; 1.51 -};</pre> 1.52 - 1.53 -<p>The <dfn id="dom-csspagedeclaration-camel-cased-attribute" title="dom-CSSPageDeclaration-camel-cased-attribute"><code><var>camel-cased attribute</var></code></dfn> attribute, on getting, must return the 1.54 -result of invoking <code title="dom-CSSDeclaration-getPropertyValue"><a href="#dom-cssdeclaration-getpropertyvalue">getPropertyValue()</a></code> with the 1.55 -argument being the result of running the <a href="#idl-attribute-to-css-property">IDL attribute to CSS property</a> 1.56 -algorithm for <var>camel-cased attribute</var>.</p> 1.57 - 1.58 -<p>Setting the <code title="dom-CSSPageDeclaration-camel-cased-attribute"><a href="#dom-csspagedeclaration-camel-cased-attribute"><var>camel-cased attribute</var></a></code> attribute must invoke 1.59 -<code title="dom-CSSDeclaration-setProperty"><a href="#dom-cssdeclaration-setproperty">setProperty()</a></code> with the 1.60 -first argument being the result of running the <a href="#idl-attribute-to-css-property">IDL attribute to CSS property</a> 1.61 -algorithm for <var>camel-cased attribute</var>, as second argument the given value, and no third argument. Any 1.62 -exceptions thrown must be re-thrown.</p> 1.63 - 1.64 -<!-- [GA] Remove spec text for so called "dashed-attribute" until consensus obtains on whether to include in spec. 1.65 - 1.66 -<p>For each CSS property <var>property</var> that is a <span>CSS page context property</span>, except for properties that have no 1.67 -"<code title>-</code>" (U+002D) in the property name, user agents must act as if there was a WebIDL <span data-anolis-spec=webidl>regular attribute</span> 1.68 -member as part of the <code>CSSPageDeclaration</code> interface with the type being <code title>DOMString</code> and the 1.69 -<span data-anolis-spec=webidl>identifier</span> being <var>property</var>, and let <var>dashed attribute</var> be <var>property</var>. 1.70 - 1.71 -<p>The <dfn title=dom-CSSPageDeclaration-dashed-attribute><code><var>dashed attribute</var></code></dfn> attribute, on getting, must return the 1.72 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 1.73 -argument being <var>dashed attribute</var>.</p> 1.74 - 1.75 -<p>Setting the <code title=dom-CSSPageDeclaration-dashed-attribute><var>dashed attribute</var></code> attribute must invoke 1.76 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 1.77 -first argument being <var>dashed attribute</var>, as second argument the given value, and no third argument. Any 1.78 -exceptions thrown must be re-thrown.</p> 1.79 - 1.80 ---> 1.81 - 1.82 - 1.83 -<h4 id="the-csspagerule-interface"><span class="secno">6.4.9 </span>The <code title="">CSSPageRule</code> Interface</h4> 1.84 +<h4 id="the-csspagerule-interface"><span class="secno">6.4.8 </span>The <code title="">CSSPageRule</code> Interface</h4> 1.85 1.86 <p>The <code><a href="#csspagerule">CSSPageRule</a></code> interface represents an <code title="">@page</code> at-rule.</p> 1.87 <p class="issue">Need to define the rules for 1.88 @@ -2102,7 +2052,7 @@ 1.89 1.90 <pre class="idl">interface <dfn id="csspagerule">CSSPageRule</dfn> : <a href="#cssgroupingrule">CSSGroupingRule</a> { 1.91 attribute DOMString <a href="#dom-csspagerule-selectortext" title="dom-CSSPageRule-selectorText">selectorText</a>; 1.92 - [SameObject, PutForwards=<a href="#dom-cssdeclaration-csstext" title="dom-CSSDeclaration-cssText">cssText</a>] readonly attribute <a href="#csspagedeclaration">CSSPageDeclaration</a> <!-- 1.93 + [SameObject, PutForwards=<a href="#dom-cssstyledeclaration-csstext" title="dom-CSSStyleDeclaration-cssText">cssText</a>] readonly attribute <a href="#cssstyledeclaration">CSSStyleDeclaration</a> <!-- 1.94 --><a href="#dom-csspagerule-style" title="dom-CSSPageRule-style">style</a>; 1.95 };</pre> 1.96 1.97 @@ -2115,79 +2065,31 @@ 1.98 <li><p>Otherwise, if the algorithm returns a null value, do nothing.</li> 1.99 </ol> 1.100 1.101 -<p>The <dfn id="dom-csspagerule-style" title="dom-CSSPageRule-style"><code>style</code></dfn> attribute must return a <code><a href="#csspagedeclaration">CSSPageDeclaration</a></code> object for the <code title="">@page</code> 1.102 -at-rule, with the <a href="#concept-css-declaration-block-declarations" title="concept-css-declaration-block-declarations">declarations</a> being the declared declarations in the rule, in 1.103 -<a href="#concept-declarations-specified-order" title="concept-declarations-specified-order">specified order</a>.</p> 1.104 - 1.105 - 1.106 -<h4 id="the-cssmargindeclaration-interface"><span class="secno">6.4.10 </span>The <code title="">CSSMarginDeclaration</code> Interface</h4> 1.107 - 1.108 -<p>The <code><a href="#cssmargindeclaration">CSSMarginDeclaration</a></code> interface represents the declarations in a margin at-rule (e.g. <code title="">@top-left</code>) in an 1.109 -<code title="">@page</code> at-rule. <a href="#refsCSSPAGE">[CSSPAGE]</a> 1.110 - 1.111 -<pre class="idl">interface <dfn id="cssmargindeclaration">CSSMarginDeclaration</dfn> : <a href="#cssdeclaration">CSSDeclaration</a> { 1.112 -};</pre> 1.113 - 1.114 -<p>A <dfn id="css-margin-context-property">CSS margin context property</dfn> is a CSS property that applies within the margin context according to the CSS Page specification. 1.115 -<a href="#refsCSSPAGE">[CSSPAGE]</a> 1.116 - 1.117 -<p>For each CSS property <var>property</var> that is a <a href="#css-margin-context-property">CSS margin context property</a>, the following partial interface applies where 1.118 -<var>camel-cased attribute</var> is obtained by running the <a href="#css-property-to-idl-attribute">CSS property to IDL attribute</a> algorithm for <var>property</var>.</p> 1.119 - 1.120 -<pre class="idl extract">partial interface <a href="#cssmargindeclaration">CSSMarginDeclaration</a> { 1.121 - attribute DOMString _<a href="#dom-cssmargindeclaration-camel-cased-attribute" title="dom-CSSMarginDeclaration-camel-cased-attribute"><var>camel-cased attribute</var></a>; 1.122 -};</pre> 1.123 - 1.124 -<p>The <dfn id="dom-cssmargindeclaration-camel-cased-attribute" title="dom-CSSMarginDeclaration-camel-cased-attribute"><code><var>camel-cased attribute</var></code></dfn> attribute, on getting, must return the 1.125 -result of invoking <code title="dom-CSSDeclaration-getPropertyValue"><a href="#dom-cssdeclaration-getpropertyvalue">getPropertyValue()</a></code> with the 1.126 -argument being the result of running the <a href="#idl-attribute-to-css-property">IDL attribute to CSS property</a> 1.127 -algorithm for <var>camel-cased attribute</var>.</p> 1.128 - 1.129 -<p>Setting the <code title="dom-CSSMarginDeclaration-camel-cased-attribute"><a href="#dom-cssmargindeclaration-camel-cased-attribute"><var>camel-cased attribute</var></a></code> attribute must invoke 1.130 -<code title="dom-CSSDeclaration-setProperty"><a href="#dom-cssdeclaration-setproperty">setProperty()</a></code> with the 1.131 -first argument being the result of running the <a href="#idl-attribute-to-css-property">IDL attribute to CSS property</a> 1.132 -algorithm for <var>camel-cased attribute</var>, as second argument the given value, and no third argument. Any 1.133 -exceptions thrown must be re-thrown.</p> 1.134 - 1.135 -<!-- [GA] Remove spec text for so called "dashed-attribute" until consensus obtains on whether to include in spec. 1.136 - 1.137 -<p>For each CSS property <var>property</var> that is a <span>CSS margin context property</span>, except for properties that have no 1.138 -"<code title>-</code>" (U+002D) in the property name, user agents must act as if there was a WebIDL <span data-anolis-spec=webidl>regular attribute</span> 1.139 -member as part of the <code>CSSMarginDeclaration</code> interface with the type being <code title>DOMString</code> and the 1.140 -<span data-anolis-spec=webidl>identifier</span> being <var>property</var>, and let <var>dashed attribute</var> be <var>property</var>. 1.141 - 1.142 -<p>The <dfn title=dom-CSSMarginDeclaration-dashed-attribute><code><var>dashed attribute</var></code></dfn> attribute, on getting, must return the 1.143 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 1.144 -argument being <var>dashed attribute</var>.</p> 1.145 - 1.146 -<p>Setting the <code title=dom-CSSMarginDeclaration-dashed-attribute><var>dashed attribute</var></code> attribute must invoke 1.147 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 1.148 -first argument being <var>dashed attribute</var>, as second argument the given value, and no third argument. Any 1.149 -exceptions thrown must be re-thrown.</p> 1.150 - 1.151 ---> 1.152 - 1.153 - 1.154 -<h4 id="the-cssmarginrule-interface"><span class="secno">6.4.11 </span>The <code title="">CSSMarginRule</code> Interface</h4> 1.155 +<p>The <dfn id="dom-csspagerule-style" title="dom-CSSPageRule-style"><code>style</code></dfn> attribute must return a <code><a href="#cssstyledeclaration">CSSStyleDeclaration</a></code> object for the 1.156 +<code title="">@page</code> at-rule, with the <a href="#concept-css-declaration-block-declarations" title="concept-css-declaration-block-declarations">declarations</a> being the declared declarations in the 1.157 +rule, in <a href="#concept-declarations-specified-order" title="concept-declarations-specified-order">specified order</a>.</p> 1.158 + 1.159 + 1.160 +<h4 id="the-cssmarginrule-interface"><span class="secno">6.4.9 </span>The <code title="">CSSMarginRule</code> Interface</h4> 1.161 1.162 <p>The <code title="">CSSMarginRule</code> interface represents a margin at-rule (e.g. <code title="">@top-left</code>) in an <code title="">@page</code> at-rule. 1.163 <a href="#refsCSSPAGE">[CSSPAGE]</a> 1.164 1.165 <pre class="idl">interface <dfn id="cssmarginrule">CSSMarginRule</dfn> : <a href="#cssrule">CSSRule</a> { 1.166 readonly attribute DOMString <a href="#dom-cssmarginrule-name" title="dom-CSSMarginRule-name">name</a>; 1.167 - [SameObject, PutForwards=<a href="#dom-cssdeclaration-csstext" title="dom-CSSDeclaration-cssText">cssText</a>] readonly attribute <a href="#csspagedeclaration">CSSPageDeclaration</a> <!-- 1.168 + [SameObject, PutForwards=<a href="#dom-cssstyledeclaration-csstext" title="dom-CSSStyleDeclaration-cssText">cssText</a>] readonly attribute <a href="#cssstyledeclaration">CSSStyleDeclaration</a> <!-- 1.169 --><a href="#dom-cssmarginrule-style" title="dom-CSSMarginRule-style">style</a>; 1.170 };</pre> 1.171 1.172 <p>The <dfn id="dom-cssmarginrule-name" title="dom-CSSMarginRule-name"><code>name</code></dfn> attribute must return the name of the margin at-rule. The <code title="">@</code> character is not 1.173 included in the name. <a href="#refsCSSSYNTAX">[CSSSYNTAX]</a> 1.174 1.175 -<p>The <dfn id="dom-cssmarginrule-style" title="dom-CSSMarginRule-style"><code>style</code></dfn> attribute must return a <code><a href="#cssmargindeclaration">CSSMarginDeclaration</a></code> object for the 1.176 +<p>The <dfn id="dom-cssmarginrule-style" title="dom-CSSMarginRule-style"><code>style</code></dfn> attribute must return a <code><a href="#cssstyledeclaration">CSSStyleDeclaration</a></code> object for the 1.177 margin at-rule, with the <a href="#concept-css-declaration-block-declarations" title="concept-css-declaration-block-declarations">declarations</a> being the declared declarations in the rule, in 1.178 <a href="#concept-declarations-specified-order" title="concept-declarations-specified-order">specified order</a>.</p> 1.179 1.180 1.181 -<h4 id="the-cssnamespacerule-interface"><span class="secno">6.4.12 </span>The <code title="">CSSNamespaceRule</code> Interface</h4> 1.182 +<h4 id="the-cssnamespacerule-interface"><span class="secno">6.4.10 </span>The <code title="">CSSNamespaceRule</code> Interface</h4> 1.183 1.184 <p>The <code><a href="#cssnamespacerule">CSSNamespaceRule</a></code> interface represents an <code title="">@namespace</code> at-rule.</p> 1.185 1.186 @@ -2232,7 +2134,7 @@ 1.187 <p>A <dfn id="css-declaration-block">CSS declaration block</dfn> is an ordered collection of CSS 1.188 properties with their associated values, also named CSS declarations. In 1.189 the DOM a <a href="#css-declaration-block">CSS declaration block</a> is a 1.190 -<code><a href="#cssdeclaration">CSSDeclaration</a></code> object. A 1.191 +<code><a href="#cssstyledeclaration">CSSStyleDeclaration</a></code> object. A 1.192 <a href="#css-declaration-block">CSS declaration block</a> has two associated properties:</p> 1.193 1.194 <dl> 1.195 @@ -2319,10 +2221,10 @@ 1.196 <li><p>Order <var>shorthands</var> by the number of longhand properties that map to it, with the greatest number first. 1.197 </ol> 1.198 1.199 -<h4 id="the-cssdeclaration-interface"><span class="secno">6.5.1 </span>The <code title="">CSSDeclaration</code> Interface</h4> 1.200 - 1.201 -<p>The <code><a href="#cssdeclaration">CSSDeclaration</a></code> interface represents a <a href="#css-declaration-block">CSS declaration block</a>, including its underlying state, where this 1.202 -underlying state depends upon the source of the <code><a href="#cssdeclaration">CSSDeclaration</a></code> instance.</p> 1.203 +<h4 id="the-cssstyledeclaration-interface"><span class="secno">6.5.1 </span>The <code title="">CSSStyleDeclaration</code> Interface</h4> 1.204 + 1.205 +<p>The <code><a href="#cssstyledeclaration">CSSStyleDeclaration</a></code> interface represents a <a href="#css-declaration-block">CSS declaration block</a>, including its underlying state, where this 1.206 +underlying state depends upon the source of the <code><a href="#cssstyledeclaration">CSSStyleDeclaration</a></code> instance.</p> 1.207 1.208 <!-- 1.209 // 1.210 @@ -2334,25 +2236,26 @@ 1.211 // 1.212 --> 1.213 1.214 -<pre class="idl">interface <dfn id="cssdeclaration">CSSDeclaration</dfn> { 1.215 - attribute DOMString <a href="#dom-cssdeclaration-csstext" title="dom-CSSDeclaration-cssText">cssText</a>; 1.216 - readonly attribute unsigned long <a href="#dom-cssdeclaration-length" title="dom-CSSDeclaration-length">length</a>; 1.217 - getter DOMString <a href="#dom-cssdeclaration-item" title="dom-CSSDeclaration-item">item</a>(unsigned long index); 1.218 - DOMString <a href="#dom-cssdeclaration-getpropertyvalue" title="dom-CSSDeclaration-getPropertyValue">getPropertyValue</a>(DOMString property); 1.219 - DOMString <a href="#dom-cssdeclaration-getpropertypriority" title="dom-CSSDeclaration-getPropertyPriority">getPropertyPriority</a>(DOMString property); 1.220 - void <a href="#dom-cssdeclaration-setproperty" title="dom-CSSDeclaration-setProperty">setProperty</a>(DOMString property, [TreatNullAs=EmptyString] DOMString value, <!-- 1.221 +<pre class="idl">interface <dfn id="cssstyledeclaration">CSSStyleDeclaration</dfn> { 1.222 + attribute DOMString <a href="#dom-cssstyledeclaration-csstext" title="dom-CSSStyleDeclaration-cssText">cssText</a>; 1.223 + readonly attribute unsigned long <a href="#dom-cssstyledeclaration-length" title="dom-CSSStyleDeclaration-length">length</a>; 1.224 + getter DOMString <a href="#dom-cssstyledeclaration-item" title="dom-CSSStyleDeclaration-item">item</a>(unsigned long index); 1.225 + DOMString <a href="#dom-cssstyledeclaration-getpropertyvalue" title="dom-CSSStyleDeclaration-getPropertyValue">getPropertyValue</a>(DOMString property); 1.226 + DOMString <a href="#dom-cssstyledeclaration-getpropertypriority" title="dom-CSSStyleDeclaration-getPropertyPriority">getPropertyPriority</a>(DOMString property); 1.227 + void <a href="#dom-cssstyledeclaration-setproperty" title="dom-CSSStyleDeclaration-setProperty">setProperty</a>(DOMString property, [TreatNullAs=EmptyString] DOMString value, <!-- 1.228 -->[TreatNullAs=EmptyString] optional DOMString priority); 1.229 - DOMString <a href="#dom-cssdeclaration-removeproperty" title="dom-CSSDeclaration-removeProperty">removeProperty</a>(DOMString property); 1.230 - readonly attribute <a href="#cssrule">CSSRule</a>? <a href="#dom-cssdeclaration-length" title="dom-CSSDeclaration-length">parentRule</a>; 1.231 + DOMString <a href="#dom-cssstyledeclaration-removeproperty" title="dom-CSSStyleDeclaration-removeProperty">removeProperty</a>(DOMString property); 1.232 + readonly attribute <a href="#cssrule">CSSRule</a>? <a href="#dom-cssstyledeclaration-length" title="dom-CSSStyleDeclaration-length">parentRule</a>; 1.233 + attribute DOMString <a href="#dom-cssstyledeclaration-cssfloat" title="dom-CSSStyleDeclaration-cssFloat">cssFloat</a>;<!-- setProperty's value arg has [TreatNullAs=EmptyString] --> 1.234 };</pre> 1.235 1.236 <p>The object's <a class="external" data-anolis-spec="webidl" href="http://dev.w3.org/2006/webapi/WebIDL/#dfn-supported-property-indices">supported property indices</a> are the numbers in the range zero to one less than the number of declarations in 1.237 the <a href="#concept-css-declaration-block-declarations" title="concept-css-declaration-block-declarations">declarations</a>. If there are no such declarations, then there are no 1.238 <a class="external" data-anolis-spec="webidl" href="http://dev.w3.org/2006/webapi/WebIDL/#dfn-supported-property-indices">supported property indices</a>. 1.239 1.240 -<p>The <dfn id="dom-cssdeclaration-csstext" title="dom-CSSDeclaration-cssText"><code>cssText</code></dfn> attribute must return the result of 1.241 +<p>The <dfn id="dom-cssstyledeclaration-csstext" title="dom-CSSStyleDeclaration-cssText"><code>cssText</code></dfn> attribute must return the result of 1.242 <a href="#serialize-a-css-declaration-block" title="serialize a CSS declaration block">serializing</a> the <a href="#concept-css-declaration-block-declarations" title="concept-css-declaration-block-declarations">declarations</a>.</p> 1.243 -<p>Setting the <code title="dom-CSSDeclaration-cssText"><a href="#dom-cssdeclaration-csstext">cssText</a></code> attribute must run these steps: 1.244 +<p>Setting the <code title="dom-CSSStyleDeclaration-cssText"><a href="#dom-cssstyledeclaration-csstext">cssText</a></code> attribute must run these steps: 1.245 <ol> 1.246 <li><p>If the <a href="#concept-css-declaration-block-readonly-flag" title="concept-css-declaration-block-readonly-flag">readonly flag</a> is set, <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#concept-throw" title="concept-throw">throw</a> 1.247 a <code class="external" data-anolis-spec="dom"><a href="http://dom.spec.whatwg.org/#nomodificationallowederror">NoModificationAllowedError</a></code> exception and terminate these steps.</li> 1.248 @@ -2362,13 +2265,13 @@ 1.249 order</a>.</li> 1.250 </ol> 1.251 1.252 -<p>The <dfn id="dom-cssdeclaration-length" title="dom-CSSDeclaration-length"><code>length</code></dfn> attribute must return the number of declarations in the 1.253 +<p>The <dfn id="dom-cssstyledeclaration-length" title="dom-CSSStyleDeclaration-length"><code>length</code></dfn> attribute must return the number of declarations in the 1.254 <a href="#concept-css-declaration-block-declarations" title="concept-css-declaration-block-declarations">declarations</a>.</p> 1.255 1.256 -<p>The <dfn id="dom-cssdeclaration-item" title="dom-CSSDeclaration-item"><code>item(<var>index</var>)</code></dfn> method must return the name of the property at position 1.257 +<p>The <dfn id="dom-cssstyledeclaration-item" title="dom-CSSStyleDeclaration-item"><code>item(<var>index</var>)</code></dfn> method must return the name of the property at position 1.258 <var>index</var>.</p> 1.259 1.260 -<p>The <dfn id="dom-cssdeclaration-getpropertyvalue" title="dom-CSSDeclaration-getPropertyValue"><code>getPropertyValue(<var>property</var>)</code></dfn> method must run these steps:</p> 1.261 +<p>The <dfn id="dom-cssstyledeclaration-getpropertyvalue" title="dom-CSSStyleDeclaration-getPropertyValue"><code>getPropertyValue(<var>property</var>)</code></dfn> method must run these steps:</p> 1.262 <ol> 1.263 <li><p>Let <var>property</var> be <var>property</var> <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#converted-to-ascii-lowercase">converted to ASCII lowercase</a>. 1.264 <li><p>If <var>property</var> is a shorthand property, then follow these substeps: 1.265 @@ -2390,14 +2293,14 @@ 1.266 <li><p>Return the empty string. 1.267 </ol> 1.268 1.269 -<p>The <dfn id="dom-cssdeclaration-getpropertypriority" title="dom-CSSDeclaration-getPropertyPriority"><code>getPropertyPriority(<var>property</var>)</code></dfn> method must run these steps: 1.270 +<p>The <dfn id="dom-cssstyledeclaration-getpropertypriority" title="dom-CSSStyleDeclaration-getPropertyPriority"><code>getPropertyPriority(<var>property</var>)</code></dfn> method must run these steps: 1.271 <ol> 1.272 <li><p>Let <var>property</var> be <var>property</var> <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#converted-to-ascii-lowercase">converted to ASCII lowercase</a>. 1.273 <li><p>If <var>property</var> is a shorthand property, follow these substeps: 1.274 <ol> 1.275 <li><p>Let <var>list</var> be a new array. 1.276 <li><p>For each longhand property <var>longhand</var> that <var>property</var> maps to, append the result of invoking 1.277 - <code title="dom-CSSDeclaration-getPropertyPriority"><a href="#dom-cssdeclaration-getpropertypriority">getPropertyPriority()</a></code> with <var>longhand</var> as argument to <var>list</var>. 1.278 + <code title="dom-CSSStyleDeclaration-getPropertyPriority"><a href="#dom-cssstyledeclaration-getpropertypriority">getPropertyPriority()</a></code> with <var>longhand</var> as argument to <var>list</var>. 1.279 <li><p>If all items in <var>list</var> are the string "<code title="">important</code>", return the string "<code title="">important</code>" and terminate these 1.280 steps. 1.281 </ol> 1.282 @@ -2414,7 +2317,7 @@ 1.283 <div class="example"><p>E.g. for <code title="">background-color:lime !IMPORTANT</code> the return 1.284 value would be "<code title="">important</code>".</div> 1.285 1.286 -<p>The <dfn id="dom-cssdeclaration-setproperty" title="dom-CSSDeclaration-setProperty"><code>setProperty(<var>property</var>, <var>value</var>, 1.287 +<p>The <dfn id="dom-cssstyledeclaration-setproperty" title="dom-CSSStyleDeclaration-setProperty"><code>setProperty(<var>property</var>, <var>value</var>, 1.288 <var>priority</var>)</code></dfn> method must run these steps:</p> 1.289 <ol> 1.290 <li><p>If the <a href="#concept-css-declaration-block-readonly-flag" title="concept-css-declaration-block-readonly-flag">readonly flag</a> is set, <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#concept-throw" title="concept-throw">throw</a> 1.291 @@ -2422,7 +2325,7 @@ 1.292 <li><p>Let <var>property</var> be <var>property</var> <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#converted-to-ascii-lowercase">converted to ASCII lowercase</a>. 1.293 <li><p>If <var>property</var> is not a <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#case-sensitive">case-sensitive</a> match for a <a href="#supported-css-property">supported CSS property</a>, terminate this 1.294 algorithm.</li> 1.295 - <li><p>If <var>value</var> is the empty string, invoke <code title="dom-CSSDeclaration-removeProperty"><a href="#dom-cssdeclaration-removeproperty">removeProperty()</a></code> 1.296 + <li><p>If <var>value</var> is the empty string, invoke <code title="dom-CSSStyleDeclaration-removeProperty"><a href="#dom-cssstyledeclaration-removeproperty">removeProperty()</a></code> 1.297 with <var>property</var> as argument and terminate this algorithm.</li> 1.298 <li><p>If <var>priority</var> is not specified, let <var>priority action</var> be "leave as is". Otherwise, if <var>priority</var> is the empty string, let 1.299 <var>priority action</var> be "unset important". Otherwise, if <var>priority</var> is an <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#ascii-case-insensitive">ASCII case-insensitive</a> match for the 1.300 @@ -2454,35 +2357,28 @@ 1.301 <li><p>Otherwise, if <i>priority action</i> is "unset important", unset the declaration's <i>important</i> flag. 1.302 </ol> 1.303 1.304 -<p>The <dfn id="dom-cssdeclaration-removeproperty" title="dom-CSSDeclaration-removeProperty"><code>removeProperty(<var>property</var>)</code></dfn> method must run these steps:</p> 1.305 +<p>The <dfn id="dom-cssstyledeclaration-removeproperty" title="dom-CSSStyleDeclaration-removeProperty"><code>removeProperty(<var>property</var>)</code></dfn> method must run these steps:</p> 1.306 <ol> 1.307 <li><p>If the <a href="#concept-css-declaration-block-readonly-flag" title="concept-css-declaration-block-readonly-flag">readonly flag</a> is set, <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#concept-throw" title="concept-throw">throw</a> 1.308 a <code class="external" data-anolis-spec="dom"><a href="http://dom.spec.whatwg.org/#nomodificationallowederror">NoModificationAllowedError</a></code> exception and terminate these steps.</li> 1.309 <li><p>Let <var>property</var> be <var>property</var> <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#converted-to-ascii-lowercase">converted to ASCII lowercase</a>. 1.310 - <li><p>Let <var>value</var> be the return value of invoking <code title="dom-CSSDeclaration-getPropertyValue"><a href="#dom-cssdeclaration-getpropertyvalue">getPropertyValue()</a></code> 1.311 + <li><p>Let <var>value</var> be the return value of invoking <code title="dom-CSSStyleDeclaration-getPropertyValue"><a href="#dom-cssstyledeclaration-getpropertyvalue">getPropertyValue()</a></code> 1.312 with <var>property</var> as argument. 1.313 <li><p>If <var>property</var> is a shorthand property, for each longhand property <var>longhand</var> that <var>property</var> maps to, invoke 1.314 - <code title="dom-CSSDeclaration-removeProperty"><a href="#dom-cssdeclaration-removeproperty">removeProperty()</a></code> with <var>longhand</var> as argument. 1.315 + <code title="dom-CSSStyleDeclaration-removeProperty"><a href="#dom-cssstyledeclaration-removeproperty">removeProperty()</a></code> with <var>longhand</var> as argument. 1.316 <li><p>Otherwise, if <var>property</var> is a <a class="external" data-anolis-spec="dom" href="http://dom.spec.whatwg.org/#case-sensitive">case-sensitive</a> match for a property of a declaration in the 1.317 <a href="#concept-css-declaration-block-declarations" title="concept-css-declaration-block-declarations">declarations</a>, remove the declaration. 1.318 <li><p>Return <var>value</var>. 1.319 </ol> 1.320 1.321 -<p>The <dfn id="dom-cssdeclaration-parentrule" title="dom-CSSDeclaration-parentRule"><code>parentRule</code></dfn> attribute must return the <code><a href="#cssrule">CSSrule</a></code> object the 1.322 -<code><a href="#cssdeclaration">CSSDeclaration</a></code> is object is associated with or null if it is not associated with a <code><a href="#cssrule">CSSrule</a></code> object.</p> 1.323 - 1.324 - 1.325 -<h4 id="the-cssstyledeclaration-interface"><span class="secno">6.5.2 </span>The <code title="">CSSStyleDeclaration</code> Interface</h4> 1.326 - 1.327 -<pre class="idl">interface <dfn id="cssstyledeclaration">CSSStyleDeclaration</dfn> : <a href="#cssdeclaration">CSSDeclaration</a> { 1.328 - attribute DOMString <a href="#dom-cssstyledeclaration-cssfloat" title="dom-CSSStyleDeclaration-cssFloat">cssFloat</a>;<!-- setProperty's value arg has [TreatNullAs=EmptyString] --> 1.329 -};</pre> 1.330 +<p>The <dfn id="dom-cssstyledeclaration-parentrule" title="dom-CSSStyleDeclaration-parentRule"><code>parentRule</code></dfn> attribute must return the <code><a href="#cssrule">CSSrule</a></code> object the 1.331 +<code><a href="#cssstyledeclaration">CSSStyleDeclaration</a></code> is object is associated with or null if it is not associated with a <code><a href="#cssrule">CSSrule</a></code> object.</p> 1.332 1.333 <p>The <dfn id="dom-cssstyledeclaration-cssfloat" title="dom-CSSStyleDeclaration-cssFloat"><code>cssFloat</code></dfn> 1.334 attribute, on getting, must return the result of invoking 1.335 -<code title="dom-CSSDeclaration-getPropertyValue"><a href="#dom-cssdeclaration-getpropertyvalue">getPropertyValue()</a></code> with 1.336 +<code title="dom-CSSStyleDeclaration-getPropertyValue"><a href="#dom-cssstyledeclaration-getpropertyvalue">getPropertyValue()</a></code> with 1.337 <code title="">float</code> as argument. On setting, the attribute must invoke 1.338 -<code title="dom-CSSDeclaration-setProperty"><a href="#dom-cssdeclaration-setproperty">setProperty()</a></code> with 1.339 +<code title="dom-CSSStyleDeclaration-setProperty"><a href="#dom-cssstyledeclaration-setproperty">setProperty()</a></code> with 1.340 <code title="">float</code> as first argument, as second argument the given value, and no third argument. 1.341 Any exceptions thrown must be re-thrown. 1.342 1.343 @@ -2496,12 +2392,12 @@ 1.344 };</pre> 1.345 1.346 <p>The <dfn id="dom-cssstyledeclaration-camel-cased-attribute" title="dom-CSSStyleDeclaration-camel-cased-attribute"><code><var>camel-cased attribute</var></code></dfn> attribute, on getting, must return the 1.347 -result of invoking <code title="dom-CSSDeclaration-getPropertyValue"><a href="#dom-cssdeclaration-getpropertyvalue">getPropertyValue()</a></code> with the 1.348 +result of invoking <code title="dom-CSSStyleDeclaration-getPropertyValue"><a href="#dom-cssstyledeclaration-getpropertyvalue">getPropertyValue()</a></code> with the 1.349 argument being the result of running the <a href="#idl-attribute-to-css-property">IDL attribute to CSS property</a> 1.350 algorithm for <var>camel-cased attribute</var>.</p> 1.351 1.352 <p>Setting the <code title="dom-CSSStyleDeclaration-camel-cased-attribute"><a href="#dom-cssstyledeclaration-camel-cased-attribute"><var>camel-cased attribute</var></a></code> attribute must invoke 1.353 -<code title="dom-CSSDeclaration-setProperty"><a href="#dom-cssdeclaration-setproperty">setProperty()</a></code> with the 1.354 +<code title="dom-CSSStyleDeclaration-setProperty"><a href="#dom-cssstyledeclaration-setproperty">setProperty()</a></code> with the 1.355 first argument being the result of running the <a href="#idl-attribute-to-css-property">IDL attribute to CSS property</a> 1.356 algorithm for <var>camel-cased attribute</var>, as second argument the given value, and no third argument. Any 1.357 exceptions thrown must be re-thrown.</p> 1.358 @@ -2516,11 +2412,11 @@ 1.359 <var>property</var>, and let <var>dashed attribute</var> be <var>property</var>. 1.360 1.361 <p>The <dfn title=dom-CSSStyleDeclaration-dashed-attribute><code><var>dashed attribute</var></code></dfn> attribute, on getting, must return the 1.362 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 1.363 +result of invoking <code title=dom-CSSStyleDeclaration-getPropertyValue>getPropertyValue()</code> with the 1.364 argument being <var>dashed attribute</var>.</p> 1.365 1.366 <p>Setting the <code title=dom-CSSStyleDeclaration-dashed-attribute><var>dashed attribute</var></code> attribute must invoke 1.367 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 1.368 +<code title=dom-CSSStyleDeclaration-setProperty>setProperty()</code> with the 1.369 first argument being <var>dashed attribute</var>, as second argument the given value, and no third argument. Any 1.370 exceptions thrown must be re-thrown.</p> 1.371 1.372 @@ -2860,7 +2756,7 @@ 1.373 1.374 <pre class="idl">[NoInterfaceObject] 1.375 interface <dfn id="elementcssinlinestyle">ElementCSSInlineStyle</dfn> { 1.376 - [SameObject, PutForwards=<a href="#dom-cssdeclaration-csstext" title="dom-CSSDeclaration-cssText">cssText</a>] readonly attribute <a href="#cssstyledeclaration">CSSStyleDeclaration</a> <!-- 1.377 + [SameObject, PutForwards=<a href="#dom-cssstyledeclaration-csstext" title="dom-CSSStyleDeclaration-cssText">cssText</a>] readonly attribute <a href="#cssstyledeclaration">CSSStyleDeclaration</a> <!-- 1.378 --><a href="#dom-elementcssinlinestyle-style" title="dom-ElementCSSInlineStyle-style">style</a>; 1.379 };</pre> 1.380
2.1 --- a/cssom/Overview.src.html Wed Aug 21 10:29:36 2013 +0200 2.2 +++ b/cssom/Overview.src.html Wed Aug 21 13:30:56 2013 +0200 2.3 @@ -1873,7 +1873,7 @@ 2.4 2.5 <pre class=idl>interface <dfn>CSSStyleRule</dfn> : <span>CSSRule</span> { 2.6 attribute DOMString <span title=dom-CSSStyleRule-selectorText>selectorText</span>; 2.7 - [SameObject, PutForwards=<span title=dom-CSSDeclaration-cssText>cssText</span>] readonly attribute <span>CSSStyleDeclaration</span> <!-- 2.8 + [SameObject, PutForwards=<span title=dom-CSSStyleDeclaration-cssText>cssText</span>] readonly attribute <span>CSSStyleDeclaration</span> <!-- 2.9 --><span title=dom-CSSStyleRule-style>style</span>; 2.10 };</pre> 2.11 2.12 @@ -1964,53 +1964,6 @@ 2.13 with the <code title>@media</code> at-rule.</p> 2.14 2.15 2.16 -<h4>The <code title>CSSPageDeclaration</code> Interface</h4> 2.17 - 2.18 -<p>The <code>CSSPageDeclaration</code> interface represents the declarations in an <code title>@page</code> at-rule. 2.19 - 2.20 -<pre class=idl>interface <dfn>CSSPageDeclaration</dfn> : <span>CSSDeclaration</span> { 2.21 -};</pre> 2.22 - 2.23 -<p>A <dfn>CSS page context property</dfn> is a CSS property that applies within the page context according to the CSS Page specification. 2.24 -<span data-anolis-ref>CSSPAGE</span> 2.25 - 2.26 -<p>For each CSS property <var>property</var> that is a <span>CSS page context property</span>, the following partial interface applies where 2.27 -<var>camel-cased attribute</var> is obtained by running the <span>CSS property to IDL attribute</span> algorithm for <var>property</var>.</p> 2.28 - 2.29 -<pre class="idl extract">partial interface <span>CSSPageDeclaration</span> { 2.30 - attribute DOMString _<span title=dom-CSSPageDeclaration-camel-cased-attribute><var>camel-cased attribute</var></span>; 2.31 -};</pre> 2.32 - 2.33 -<p>The <dfn title=dom-CSSPageDeclaration-camel-cased-attribute><code><var>camel-cased attribute</var></code></dfn> attribute, on getting, must return the 2.34 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 2.35 -argument being the result of running the <span>IDL attribute to CSS property</span> 2.36 -algorithm for <var>camel-cased attribute</var>.</p> 2.37 - 2.38 -<p>Setting the <code title=dom-CSSPageDeclaration-camel-cased-attribute><var>camel-cased attribute</var></code> attribute must invoke 2.39 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 2.40 -first argument being the result of running the <span>IDL attribute to CSS property</span> 2.41 -algorithm for <var>camel-cased attribute</var>, as second argument the given value, and no third argument. Any 2.42 -exceptions thrown must be re-thrown.</p> 2.43 - 2.44 -<!-- [GA] Remove spec text for so called "dashed-attribute" until consensus obtains on whether to include in spec. 2.45 - 2.46 -<p>For each CSS property <var>property</var> that is a <span>CSS page context property</span>, except for properties that have no 2.47 -"<code title>-</code>" (U+002D) in the property name, user agents must act as if there was a WebIDL <span data-anolis-spec=webidl>regular attribute</span> 2.48 -member as part of the <code>CSSPageDeclaration</code> interface with the type being <code title>DOMString</code> and the 2.49 -<span data-anolis-spec=webidl>identifier</span> being <var>property</var>, and let <var>dashed attribute</var> be <var>property</var>. 2.50 - 2.51 -<p>The <dfn title=dom-CSSPageDeclaration-dashed-attribute><code><var>dashed attribute</var></code></dfn> attribute, on getting, must return the 2.52 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 2.53 -argument being <var>dashed attribute</var>.</p> 2.54 - 2.55 -<p>Setting the <code title=dom-CSSPageDeclaration-dashed-attribute><var>dashed attribute</var></code> attribute must invoke 2.56 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 2.57 -first argument being <var>dashed attribute</var>, as second argument the given value, and no third argument. Any 2.58 -exceptions thrown must be re-thrown.</p> 2.59 - 2.60 ---> 2.61 - 2.62 - 2.63 <h4>The <code title>CSSPageRule</code> Interface</h4> 2.64 2.65 <p>The <code>CSSPageRule</code> interface represents an <code title>@page</code> at-rule.</p> 2.66 @@ -2020,7 +1973,7 @@ 2.67 2.68 <pre class=idl>interface <dfn>CSSPageRule</dfn> : <span>CSSGroupingRule</span> { 2.69 attribute DOMString <span title=dom-CSSPageRule-selectorText>selectorText</span>; 2.70 - [SameObject, PutForwards=<span title=dom-CSSDeclaration-cssText>cssText</span>] readonly attribute <span>CSSPageDeclaration</span> <!-- 2.71 + [SameObject, PutForwards=<span title=dom-CSSStyleDeclaration-cssText>cssText</span>] readonly attribute <span>CSSStyleDeclaration</span> <!-- 2.72 --><span title=dom-CSSPageRule-style>style</span>; 2.73 };</pre> 2.74 2.75 @@ -2033,57 +1986,9 @@ 2.76 <li><p>Otherwise, if the algorithm returns a null value, do nothing.</p></li> 2.77 </ol> 2.78 2.79 -<p>The <dfn title=dom-CSSPageRule-style><code>style</code></dfn> attribute must return a <code>CSSPageDeclaration</code> object for the <code title>@page</code> 2.80 -at-rule, with the <span title=concept-css-declaration-block-declarations>declarations</span> being the declared declarations in the rule, in 2.81 -<span title=concept-declarations-specified-order>specified order</span>.</p> 2.82 - 2.83 - 2.84 -<h4>The <code title>CSSMarginDeclaration</code> Interface</h4> 2.85 - 2.86 -<p>The <code>CSSMarginDeclaration</code> interface represents the declarations in a margin at-rule (e.g. <code title>@top-left</code>) in an 2.87 -<code title>@page</code> at-rule. <span data-anolis-ref>CSSPAGE</span> 2.88 - 2.89 -<pre class=idl>interface <dfn>CSSMarginDeclaration</dfn> : <span>CSSDeclaration</span> { 2.90 -};</pre> 2.91 - 2.92 -<p>A <dfn>CSS margin context property</dfn> is a CSS property that applies within the margin context according to the CSS Page specification. 2.93 -<span data-anolis-ref>CSSPAGE</span> 2.94 - 2.95 -<p>For each CSS property <var>property</var> that is a <span>CSS margin context property</span>, the following partial interface applies where 2.96 -<var>camel-cased attribute</var> is obtained by running the <span>CSS property to IDL attribute</span> algorithm for <var>property</var>.</p> 2.97 - 2.98 -<pre class="idl extract">partial interface <span>CSSMarginDeclaration</span> { 2.99 - attribute DOMString _<span title=dom-CSSMarginDeclaration-camel-cased-attribute><var>camel-cased attribute</var></span>; 2.100 -};</pre> 2.101 - 2.102 -<p>The <dfn title=dom-CSSMarginDeclaration-camel-cased-attribute><code><var>camel-cased attribute</var></code></dfn> attribute, on getting, must return the 2.103 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 2.104 -argument being the result of running the <span>IDL attribute to CSS property</span> 2.105 -algorithm for <var>camel-cased attribute</var>.</p> 2.106 - 2.107 -<p>Setting the <code title=dom-CSSMarginDeclaration-camel-cased-attribute><var>camel-cased attribute</var></code> attribute must invoke 2.108 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 2.109 -first argument being the result of running the <span>IDL attribute to CSS property</span> 2.110 -algorithm for <var>camel-cased attribute</var>, as second argument the given value, and no third argument. Any 2.111 -exceptions thrown must be re-thrown.</p> 2.112 - 2.113 -<!-- [GA] Remove spec text for so called "dashed-attribute" until consensus obtains on whether to include in spec. 2.114 - 2.115 -<p>For each CSS property <var>property</var> that is a <span>CSS margin context property</span>, except for properties that have no 2.116 -"<code title>-</code>" (U+002D) in the property name, user agents must act as if there was a WebIDL <span data-anolis-spec=webidl>regular attribute</span> 2.117 -member as part of the <code>CSSMarginDeclaration</code> interface with the type being <code title>DOMString</code> and the 2.118 -<span data-anolis-spec=webidl>identifier</span> being <var>property</var>, and let <var>dashed attribute</var> be <var>property</var>. 2.119 - 2.120 -<p>The <dfn title=dom-CSSMarginDeclaration-dashed-attribute><code><var>dashed attribute</var></code></dfn> attribute, on getting, must return the 2.121 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 2.122 -argument being <var>dashed attribute</var>.</p> 2.123 - 2.124 -<p>Setting the <code title=dom-CSSMarginDeclaration-dashed-attribute><var>dashed attribute</var></code> attribute must invoke 2.125 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 2.126 -first argument being <var>dashed attribute</var>, as second argument the given value, and no third argument. Any 2.127 -exceptions thrown must be re-thrown.</p> 2.128 - 2.129 ---> 2.130 +<p>The <dfn title=dom-CSSPageRule-style><code>style</code></dfn> attribute must return a <code>CSSStyleDeclaration</code> object for the 2.131 +<code title>@page</code> at-rule, with the <span title=concept-css-declaration-block-declarations>declarations</span> being the declared declarations in the 2.132 +rule, in <span title=concept-declarations-specified-order>specified order</span>.</p> 2.133 2.134 2.135 <h4>The <code title>CSSMarginRule</code> Interface</h4> 2.136 @@ -2093,14 +1998,14 @@ 2.137 2.138 <pre class=idl>interface <dfn>CSSMarginRule</dfn> : <span>CSSRule</span> { 2.139 readonly attribute DOMString <span title=dom-CSSMarginRule-name>name</span>; 2.140 - [SameObject, PutForwards=<span title=dom-CSSDeclaration-cssText>cssText</span>] readonly attribute <span>CSSPageDeclaration</span> <!-- 2.141 + [SameObject, PutForwards=<span title=dom-CSSStyleDeclaration-cssText>cssText</span>] readonly attribute <span>CSSStyleDeclaration</span> <!-- 2.142 --><span title=dom-CSSMarginRule-style>style</span>; 2.143 };</pre> 2.144 2.145 <p>The <dfn title=dom-CSSMarginRule-name><code>name</code></dfn> attribute must return the name of the margin at-rule. The <code title>@</code> character is not 2.146 included in the name. <span data-anolis-ref>CSSSYNTAX</span> 2.147 2.148 -<p>The <dfn title=dom-CSSMarginRule-style><code>style</code></dfn> attribute must return a <code>CSSMarginDeclaration</code> object for the 2.149 +<p>The <dfn title=dom-CSSMarginRule-style><code>style</code></dfn> attribute must return a <code>CSSStyleDeclaration</code> object for the 2.150 margin at-rule, with the <span title=concept-css-declaration-block-declarations>declarations</span> being the declared declarations in the rule, in 2.151 <span title=concept-declarations-specified-order>specified order</span>.</p> 2.152 2.153 @@ -2150,7 +2055,7 @@ 2.154 <p>A <dfn>CSS declaration block</dfn> is an ordered collection of CSS 2.155 properties with their associated values, also named CSS declarations. In 2.156 the DOM a <span>CSS declaration block</span> is a 2.157 -<code>CSSDeclaration</code> object. A 2.158 +<code>CSSStyleDeclaration</code> object. A 2.159 <span>CSS declaration block</span> has two associated properties:</p> 2.160 2.161 <dl> 2.162 @@ -2237,10 +2142,10 @@ 2.163 <li><p>Order <var>shorthands</var> by the number of longhand properties that map to it, with the greatest number first. 2.164 </ol> 2.165 2.166 -<h4>The <code title>CSSDeclaration</code> Interface</h4> 2.167 - 2.168 -<p>The <code>CSSDeclaration</code> interface represents a <span>CSS declaration block</span>, including its underlying state, where this 2.169 -underlying state depends upon the source of the <code>CSSDeclaration</Code> instance.</p> 2.170 +<h4>The <code title>CSSStyleDeclaration</code> Interface</h4> 2.171 + 2.172 +<p>The <code>CSSStyleDeclaration</code> interface represents a <span>CSS declaration block</span>, including its underlying state, where this 2.173 +underlying state depends upon the source of the <code>CSSStyleDeclaration</Code> instance.</p> 2.174 2.175 <!-- 2.176 // 2.177 @@ -2252,25 +2157,26 @@ 2.178 // 2.179 --> 2.180 2.181 -<pre class=idl>interface <dfn>CSSDeclaration</dfn> { 2.182 - attribute DOMString <span title=dom-CSSDeclaration-cssText>cssText</span>; 2.183 - readonly attribute unsigned long <span title=dom-CSSDeclaration-length>length</span>; 2.184 - getter DOMString <span title=dom-CSSDeclaration-item>item</span>(unsigned long index); 2.185 - DOMString <span title=dom-CSSDeclaration-getPropertyValue>getPropertyValue</span>(DOMString property); 2.186 - DOMString <span title=dom-CSSDeclaration-getPropertyPriority>getPropertyPriority</span>(DOMString property); 2.187 - void <span title=dom-CSSDeclaration-setProperty>setProperty</span>(DOMString property, [TreatNullAs=EmptyString] DOMString value, <!-- 2.188 +<pre class=idl>interface <dfn>CSSStyleDeclaration</dfn> { 2.189 + attribute DOMString <span title=dom-CSSStyleDeclaration-cssText>cssText</span>; 2.190 + readonly attribute unsigned long <span title=dom-CSSStyleDeclaration-length>length</span>; 2.191 + getter DOMString <span title=dom-CSSStyleDeclaration-item>item</span>(unsigned long index); 2.192 + DOMString <span title=dom-CSSStyleDeclaration-getPropertyValue>getPropertyValue</span>(DOMString property); 2.193 + DOMString <span title=dom-CSSStyleDeclaration-getPropertyPriority>getPropertyPriority</span>(DOMString property); 2.194 + void <span title=dom-CSSStyleDeclaration-setProperty>setProperty</span>(DOMString property, [TreatNullAs=EmptyString] DOMString value, <!-- 2.195 -->[TreatNullAs=EmptyString] optional DOMString priority); 2.196 - DOMString <span title=dom-CSSDeclaration-removeProperty>removeProperty</span>(DOMString property); 2.197 - readonly attribute <span>CSSRule</span>? <span title=dom-CSSDeclaration-length>parentRule</span>; 2.198 + DOMString <span title=dom-CSSStyleDeclaration-removeProperty>removeProperty</span>(DOMString property); 2.199 + readonly attribute <span>CSSRule</span>? <span title=dom-CSSStyleDeclaration-length>parentRule</span>; 2.200 + attribute DOMString <span title=dom-CSSStyleDeclaration-cssFloat>cssFloat</span>;<!-- setProperty's value arg has [TreatNullAs=EmptyString] --> 2.201 };</pre> 2.202 2.203 <p>The object's <span data-anolis-spec=webidl>supported property indices</span> are the numbers in the range zero to one less than the number of declarations in 2.204 the <span title=concept-css-declaration-block-declarations>declarations</span>. If there are no such declarations, then there are no 2.205 <span data-anolis-spec=webidl>supported property indices</span>. 2.206 2.207 -<p>The <dfn title=dom-CSSDeclaration-cssText><code>cssText</code></dfn> attribute must return the result of 2.208 +<p>The <dfn title=dom-CSSStyleDeclaration-cssText><code>cssText</code></dfn> attribute must return the result of 2.209 <span title='serialize a CSS declaration block'>serializing</span> the <span title=concept-css-declaration-block-declarations>declarations</span>.</p> 2.210 -<p>Setting the <code title=dom-CSSDeclaration-cssText>cssText</code> attribute must run these steps: 2.211 +<p>Setting the <code title=dom-CSSStyleDeclaration-cssText>cssText</code> attribute must run these steps: 2.212 <ol> 2.213 <li><p>If the <span title=concept-css-declaration-block-readonly-flag>readonly flag</span> is set, <span data-anolis-spec=dom title=concept-throw>throw</span> 2.214 a <code data-anolis-spec=dom>NoModificationAllowedError</code> exception and terminate these steps.</li> 2.215 @@ -2280,13 +2186,13 @@ 2.216 order</span>.</p></li> 2.217 </ol> 2.218 2.219 -<p>The <dfn title=dom-CSSDeclaration-length><code>length</code></dfn> attribute must return the number of declarations in the 2.220 +<p>The <dfn title=dom-CSSStyleDeclaration-length><code>length</code></dfn> attribute must return the number of declarations in the 2.221 <span title=concept-css-declaration-block-declarations>declarations</span>.</p> 2.222 2.223 -<p>The <dfn title=dom-CSSDeclaration-item><code>item(<var>index</var>)</code></dfn> method must return the name of the property at position 2.224 +<p>The <dfn title=dom-CSSStyleDeclaration-item><code>item(<var>index</var>)</code></dfn> method must return the name of the property at position 2.225 <var>index</var>.</p> 2.226 2.227 -<p>The <dfn title=dom-CSSDeclaration-getPropertyValue><code>getPropertyValue(<var>property</var>)</code></dfn> method must run these steps:</p> 2.228 +<p>The <dfn title=dom-CSSStyleDeclaration-getPropertyValue><code>getPropertyValue(<var>property</var>)</code></dfn> method must run these steps:</p> 2.229 <ol> 2.230 <li><p>Let <var>property</var> be <var>property</var> <span data-anolis-spec=dom>converted to ASCII lowercase</span>. 2.231 <li><p>If <var>property</var> is a shorthand property, then follow these substeps: 2.232 @@ -2308,14 +2214,14 @@ 2.233 <li><p>Return the empty string. 2.234 </ol> 2.235 2.236 -<p>The <dfn title=dom-CSSDeclaration-getPropertyPriority><code>getPropertyPriority(<var>property</var>)</code></dfn> method must run these steps: 2.237 +<p>The <dfn title=dom-CSSStyleDeclaration-getPropertyPriority><code>getPropertyPriority(<var>property</var>)</code></dfn> method must run these steps: 2.238 <ol> 2.239 <li><p>Let <var>property</var> be <var>property</var> <span data-anolis-spec=dom>converted to ASCII lowercase</span>. 2.240 <li><p>If <var>property</var> is a shorthand property, follow these substeps: 2.241 <ol> 2.242 <li><p>Let <var>list</var> be a new array. 2.243 <li><p>For each longhand property <var>longhand</var> that <var>property</var> maps to, append the result of invoking 2.244 - <code title=dom-CSSDeclaration-getPropertyPriority>getPropertyPriority()</code> with <var>longhand</var> as argument to <var>list</var>. 2.245 + <code title=dom-CSSStyleDeclaration-getPropertyPriority>getPropertyPriority()</code> with <var>longhand</var> as argument to <var>list</var>. 2.246 <li><p>If all items in <var>list</var> are the string "<code title>important</code>", return the string "<code title>important</code>" and terminate these 2.247 steps. 2.248 </ol> 2.249 @@ -2332,7 +2238,7 @@ 2.250 <div class='example'><p>E.g. for <code title>background-color:lime !IMPORTANT</code> the return 2.251 value would be "<code title>important</code>".</div> 2.252 2.253 -<p>The <dfn title=dom-CSSDeclaration-setProperty><code>setProperty(<var>property</var>, <var>value</var>, 2.254 +<p>The <dfn title=dom-CSSStyleDeclaration-setProperty><code>setProperty(<var>property</var>, <var>value</var>, 2.255 <var>priority</var>)</code></dfn> method must run these steps:</p> 2.256 <ol> 2.257 <li><p>If the <span title=concept-css-declaration-block-readonly-flag>readonly flag</span> is set, <span data-anolis-spec=dom title=concept-throw>throw</span> 2.258 @@ -2340,7 +2246,7 @@ 2.259 <li><p>Let <var>property</var> be <var>property</var> <span data-anolis-spec=dom>converted to ASCII lowercase</span>. 2.260 <li><p>If <var>property</var> is not a <span data-anolis-spec=dom>case-sensitive</span> match for a <span>supported CSS property</span>, terminate this 2.261 algorithm.</p></li> 2.262 - <li><p>If <var>value</var> is the empty string, invoke <code title='dom-CSSDeclaration-removeProperty'>removeProperty()</code> 2.263 + <li><p>If <var>value</var> is the empty string, invoke <code title='dom-CSSStyleDeclaration-removeProperty'>removeProperty()</code> 2.264 with <var>property</var> as argument and terminate this algorithm.</p></li> 2.265 <li><p>If <var>priority</var> is not specified, let <var>priority action</var> be "leave as is". Otherwise, if <var>priority</var> is the empty string, let 2.266 <var>priority action</var> be "unset important". Otherwise, if <var>priority</var> is an <span data-anolis-spec=dom>ASCII case-insensitive</span> match for the 2.267 @@ -2372,35 +2278,28 @@ 2.268 <li><p>Otherwise, if <i>priority action</i> is "unset important", unset the declaration's <i>important</i> flag. 2.269 </ol> 2.270 2.271 -<p>The <dfn title=dom-CSSDeclaration-removeProperty><code>removeProperty(<var>property</var>)</code></dfn> method must run these steps:</p> 2.272 +<p>The <dfn title=dom-CSSStyleDeclaration-removeProperty><code>removeProperty(<var>property</var>)</code></dfn> method must run these steps:</p> 2.273 <ol> 2.274 <li><p>If the <span title=concept-css-declaration-block-readonly-flag>readonly flag</span> is set, <span data-anolis-spec=dom title=concept-throw>throw</span> 2.275 a <code data-anolis-spec=dom>NoModificationAllowedError</code> exception and terminate these steps.</li> 2.276 <li><p>Let <var>property</var> be <var>property</var> <span data-anolis-spec=dom>converted to ASCII lowercase</span>. 2.277 - <li><p>Let <var>value</var> be the return value of invoking <code title='dom-CSSDeclaration-getPropertyValue'>getPropertyValue()</code> 2.278 + <li><p>Let <var>value</var> be the return value of invoking <code title=dom-CSSStyleDeclaration-getPropertyValue>getPropertyValue()</code> 2.279 with <var>property</var> as argument. 2.280 <li><p>If <var>property</var> is a shorthand property, for each longhand property <var>longhand</var> that <var>property</var> maps to, invoke 2.281 - <code title=dom-CSSDeclaration-removeProperty>removeProperty()</code> with <var>longhand</var> as argument. 2.282 + <code title=dom-CSSStyleDeclaration-removeProperty>removeProperty()</code> with <var>longhand</var> as argument. 2.283 <li><p>Otherwise, if <var>property</var> is a <span data-anolis-spec=dom>case-sensitive</span> match for a property of a declaration in the 2.284 <span title=concept-css-declaration-block-declarations>declarations</span>, remove the declaration. 2.285 <li><p>Return <var>value</var>. 2.286 </ol> 2.287 2.288 -<p>The <dfn title=dom-CSSDeclaration-parentRule><code>parentRule</code></dfn> attribute must return the <code>CSSrule</code> object the 2.289 -<code>CSSDeclaration</code> is object is associated with or null if it is not associated with a <code>CSSrule</code> object.</p> 2.290 - 2.291 - 2.292 -<h4>The <code title>CSSStyleDeclaration</code> Interface</h4> 2.293 - 2.294 -<pre class=idl>interface <dfn>CSSStyleDeclaration</dfn> : <span>CSSDeclaration</span> { 2.295 - attribute DOMString <span title=dom-CSSStyleDeclaration-cssFloat>cssFloat</span>;<!-- setProperty's value arg has [TreatNullAs=EmptyString] --> 2.296 -};</pre> 2.297 +<p>The <dfn title=dom-CSSStyleDeclaration-parentRule><code>parentRule</code></dfn> attribute must return the <code>CSSrule</code> object the 2.298 +<code>CSSStyleDeclaration</code> is object is associated with or null if it is not associated with a <code>CSSrule</code> object.</p> 2.299 2.300 <p>The <dfn title=dom-CSSStyleDeclaration-cssFloat><code>cssFloat</code></dfn> 2.301 attribute, on getting, must return the result of invoking 2.302 -<code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with 2.303 +<code title=dom-CSSStyleDeclaration-getPropertyValue>getPropertyValue()</code> with 2.304 <code title>float</code> as argument. On setting, the attribute must invoke 2.305 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with 2.306 +<code title=dom-CSSStyleDeclaration-setProperty>setProperty()</code> with 2.307 <code title>float</code> as first argument, as second argument the given value, and no third argument. 2.308 Any exceptions thrown must be re-thrown. 2.309 2.310 @@ -2414,12 +2313,12 @@ 2.311 };</pre> 2.312 2.313 <p>The <dfn title=dom-CSSStyleDeclaration-camel-cased-attribute><code><var>camel-cased attribute</var></code></dfn> attribute, on getting, must return the 2.314 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 2.315 +result of invoking <code title=dom-CSSStyleDeclaration-getPropertyValue>getPropertyValue()</code> with the 2.316 argument being the result of running the <span>IDL attribute to CSS property</span> 2.317 algorithm for <var>camel-cased attribute</var>.</p> 2.318 2.319 <p>Setting the <code title=dom-CSSStyleDeclaration-camel-cased-attribute><var>camel-cased attribute</var></code> attribute must invoke 2.320 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 2.321 +<code title=dom-CSSStyleDeclaration-setProperty>setProperty()</code> with the 2.322 first argument being the result of running the <span>IDL attribute to CSS property</span> 2.323 algorithm for <var>camel-cased attribute</var>, as second argument the given value, and no third argument. Any 2.324 exceptions thrown must be re-thrown.</p> 2.325 @@ -2434,11 +2333,11 @@ 2.326 <var>property</var>, and let <var>dashed attribute</var> be <var>property</var>. 2.327 2.328 <p>The <dfn title=dom-CSSStyleDeclaration-dashed-attribute><code><var>dashed attribute</var></code></dfn> attribute, on getting, must return the 2.329 -result of invoking <code title=dom-CSSDeclaration-getPropertyValue>getPropertyValue()</code> with the 2.330 +result of invoking <code title=dom-CSSStyleDeclaration-getPropertyValue>getPropertyValue()</code> with the 2.331 argument being <var>dashed attribute</var>.</p> 2.332 2.333 <p>Setting the <code title=dom-CSSStyleDeclaration-dashed-attribute><var>dashed attribute</var></code> attribute must invoke 2.334 -<code title=dom-CSSDeclaration-setProperty>setProperty()</code> with the 2.335 +<code title=dom-CSSStyleDeclaration-setProperty>setProperty()</code> with the 2.336 first argument being <var>dashed attribute</var>, as second argument the given value, and no third argument. Any 2.337 exceptions thrown must be re-thrown.</p> 2.338 2.339 @@ -2778,7 +2677,7 @@ 2.340 2.341 <pre class=idl>[NoInterfaceObject] 2.342 interface <dfn>ElementCSSInlineStyle</dfn> { 2.343 - [SameObject, PutForwards=<span title=dom-CSSDeclaration-cssText>cssText</span>] readonly attribute <span>CSSStyleDeclaration</span> <!-- 2.344 + [SameObject, PutForwards=<span title=dom-CSSStyleDeclaration-cssText>cssText</span>] readonly attribute <span>CSSStyleDeclaration</span> <!-- 2.345 --><span title=dom-ElementCSSInlineStyle-style>style</span>; 2.346 };</pre> 2.347