[css3-conditional] Tweak some of the APIs.

Fri, 31 Aug 2012 13:36:14 -0700

author
Tab Atkins Jr. <jackalmage@gmail.com>
date
Fri, 31 Aug 2012 13:36:14 -0700
changeset 6621
095e8cb26579
parent 6620
b06f854c5e31
child 6622
44bf9c71914a

[css3-conditional] Tweak some of the APIs.

css3-conditional/Overview.html file | annotate | diff | comparison | revisions
css3-conditional/Overview.src.html file | annotate | diff | comparison | revisions
     1.1 --- a/css3-conditional/Overview.html	Fri Aug 31 13:30:08 2012 -0700
     1.2 +++ b/css3-conditional/Overview.html	Fri Aug 31 13:36:14 2012 -0700
     1.3 @@ -1151,491 +1151,480 @@
     1.4      href="#cssconditionrule"><code>CSSConditionRule</code></a> parent rule),
     1.5      on getting, must return the value of <code>media.mediaText</code> on the
     1.6      rule.
     1.7 -    <p>On setting the <code>conditionText</code> attribute these steps must
     1.8 -     be run:
     1.9 +    <p>Setting the <code>conditionText</code> attribute must set the
    1.10 +     <code>media.mediaText</code> attribute on the rule.
    1.11 +  </dl>
    1.12  
    1.13 -    <ol>
    1.14 -     <li>Trim the given value of white space.
    1.15 +  <h3 id=the-csssupportsrule-interface><span class=secno>8.4. </span> The <a
    1.16 +   href="#csssupportsrule"><code>CSSSupportsRule</code></a> interface</h3>
    1.17  
    1.18 -     <li>If the given value matches the grammar of the appropriate condition
    1.19 -      production for the given rule, replace the associated CSS condition
    1.20 -      with the given value. Also, construct a new <code>MediaList</code>
    1.21 -      object, passing the given value as the constructor's sole argument, and
    1.22 -      replace the rule's <code>media</code> attribute with it.
    1.23 +  <p>The <dfn id=csssupportsrule><code>CSSSupportsRule</code></dfn> interface
    1.24 +   represents a ‘<a href="#dfn-support"><code
    1.25 +   class=css>@supports</code></a>’ rule.
    1.26  
    1.27 -     <li>Otherwise, do nothing.
    1.28 -    </ol>
    1.29 -
    1.30 -    <h3 id=the-csssupportsrule-interface><span class=secno>8.4. </span> The
    1.31 -     <a href="#csssupportsrule"><code>CSSSupportsRule</code></a> interface</h3>
    1.32 -
    1.33 -    <p>The <dfn id=csssupportsrule><code>CSSSupportsRule</code></dfn>
    1.34 -     interface represents a ‘<a href="#dfn-support"><code
    1.35 -     class=css>@supports</code></a>’ rule.
    1.36 -
    1.37 -    <pre class=idl>interface CSSSupportsRule : CSSRule {
    1.38 +  <pre class=idl>interface CSSSupportsRule : CSSConditionRule {
    1.39  }</pre>
    1.40  
    1.41 -    <h3 id=the-cssdocumentrule-interface><span class=secno>8.5. </span> The
    1.42 -     <a href="#cssdocumentrule"><code>CSSDocumentRule</code></a> interface</h3>
    1.43 +  <h3 id=the-cssdocumentrule-interface><span class=secno>8.5. </span> The <a
    1.44 +   href="#cssdocumentrule"><code>CSSDocumentRule</code></a> interface</h3>
    1.45  
    1.46 -    <p>The <dfn id=cssdocumentrule><code>CSSDocumentRule</code></dfn>
    1.47 -     interface represents a ‘<code class=css>@document</code>’ rule.
    1.48 +  <p>The <dfn id=cssdocumentrule><code>CSSDocumentRule</code></dfn> interface
    1.49 +   represents a ‘<code class=css>@document</code>’ rule.
    1.50  
    1.51 -    <pre class=idl>interface CSSDocumentRule : CSSRule {
    1.52 +  <pre class=idl>interface CSSDocumentRule : CSSConditionRule {
    1.53  }</pre>
    1.54  
    1.55 -    <h3 id=the-css-interface><span class=secno>8.6. </span> The <a
    1.56 -     href="#CSS-interface"><code>CSS</code></a> interface, and the <code
    1.57 -     title="">supports()</code> function</h3>
    1.58 +  <h3 id=the-css-interface><span class=secno>8.6. </span> The <a
    1.59 +   href="#CSS-interface"><code>CSS</code></a> interface, and the <code
    1.60 +   title="">supports()</code> function</h3>
    1.61  
    1.62 -    <p>The <dfn id=CSS-interface><code>CSS</code></dfn> interface holds
    1.63 -     useful CSS-related functions that do not belong elsewhere.
    1.64 +  <p>The <dfn id=CSS-interface><code>CSS</code></dfn> interface holds useful
    1.65 +   CSS-related functions that do not belong elsewhere.
    1.66  
    1.67 -    <pre class=idl>interface CSS {
    1.68 +  <pre class=idl>interface CSS {
    1.69    boolean supports(DOMString property, DOMString value);
    1.70    boolean supports(DOMString declaration);
    1.71  }</pre>
    1.72  
    1.73 -    <dl class=idl-methods>
    1.74 -     <dt><code>supports(DOMString property, DOMString value)</code>, returns
    1.75 -      <code>boolean</code>
    1.76 +  <dl class=idl-methods>
    1.77 +   <dt><code>supports(DOMString property, DOMString value)</code>, returns
    1.78 +    <code>boolean</code>
    1.79  
    1.80 -     <dt><code>supports(DOMString declaration)</code>, returns
    1.81 -      <code>boolean</code>
    1.82 +   <dt><code>supports(DOMString declaration)</code>, returns
    1.83 +    <code>boolean</code>
    1.84  
    1.85 -     <dd> When the <code title="">supports()</code> method is invoked with
    1.86 -      two arguments <var>property</var> and <var>value</var>, it must return
    1.87 -      <code>true</code> if <var>property</var> is a literal match for the
    1.88 -      name of a CSS property that the UA supports, and <var>value</var> would
    1.89 -      be successfully parsed as a supported value for that property.
    1.90 -      Otherwise, it must return <code>false</code>.
    1.91 -      <p> When invoked with a single <var>declaration</var> argument, it must
    1.92 -       return <code>true</code> if <var>declaration</var>, when parsed as a
    1.93 -       declaration, represents a valid declaration for a property that the UA
    1.94 -       supports. Otherwise, it must return <code>false</code>.
    1.95 -    </dl>
    1.96 +   <dd> When the <code title="">supports()</code> method is invoked with two
    1.97 +    arguments <var>property</var> and <var>value</var>, it must return
    1.98 +    <code>true</code> if <var>property</var> is a literal match for the name
    1.99 +    of a CSS property that the UA supports, and <var>value</var> would be
   1.100 +    successfully parsed as a supported value for that property. Otherwise, it
   1.101 +    must return <code>false</code>.
   1.102 +    <p> When invoked with a single <var>declaration</var> argument, it must
   1.103 +     return <code>true</code> if <var>declaration</var>, when parsed as a
   1.104 +     declaration, represents a valid declaration for a property that the UA
   1.105 +     supports. Otherwise, it must return <code>false</code>.
   1.106 +  </dl>
   1.107  
   1.108 -    <h2 id=conformance><span class=secno>9. </span>Conformance</h2>
   1.109 +  <h2 id=conformance><span class=secno>9. </span>Conformance</h2>
   1.110  
   1.111 -    <h3 id=base-modules><span class=secno>9.1. </span>Base Modules</h3>
   1.112 +  <h3 id=base-modules><span class=secno>9.1. </span>Base Modules</h3>
   1.113  
   1.114 -    <p>This specification defines conformance in terms of base modules, which
   1.115 -     are modules that this specification builds on top of. The base modules
   1.116 -     of this module are:
   1.117 +  <p>This specification defines conformance in terms of base modules, which
   1.118 +   are modules that this specification builds on top of. The base modules of
   1.119 +   this module are:
   1.120  
   1.121 +  <ul>
   1.122 +   <li><a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>
   1.123 +  </ul>
   1.124 +
   1.125 +  <p>All of the conformance requirements of all base modules are incorporated
   1.126 +   as conformance requirements of this module, except where overridden by
   1.127 +   this module.
   1.128 +
   1.129 +  <p>Additionally, all conformance requirements related to validity of syntax
   1.130 +   in this module and all of its base modules are to be interpreted as though
   1.131 +   all syntax in all of those modules is valid.
   1.132 +
   1.133 +  <div class=example>
   1.134 +   <p>For example, this means that grammar presented in modules other than <a
   1.135 +    href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> must obey the
   1.136 +    requirements that <a href="#CSS21"
   1.137 +    rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> defines for the parsing of
   1.138 +    properties, and that requirements for handling invalid syntax in <a
   1.139 +    href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> do not treat
   1.140 +    syntax added by other modules as invalid.
   1.141 +  </div>
   1.142 +
   1.143 +  <p>Additionally, the set of valid syntax can be increased by the
   1.144 +   conformance of a style sheet or processor to additional modules; use of
   1.145 +   such syntax does not make a style sheet nonconformant and failure to treat
   1.146 +   such syntax as invalid does not make a processor nonconformant.
   1.147 +
   1.148 +  <h3 id=conformance-classes><span class=secno>9.2. </span>Conformance
   1.149 +   Classes</h3>
   1.150 +
   1.151 +  <p>Conformance to the CSS Conditional Rules Module is defined for three
   1.152 +   conformance classes:
   1.153 +
   1.154 +  <dl>
   1.155 +   <dt><dfn id=conform-style-sheet title="conformance::style sheet">style
   1.156 +    sheet</dfn>
   1.157 +
   1.158 +   <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#style-sheet">CSS
   1.159 +    style sheet</a>.
   1.160 +
   1.161 +   <dt><dfn id=conform-processor
   1.162 +    title="conformance::processor">processor</dfn>
   1.163 +
   1.164 +   <dd>A tool that reads CSS style sheets: it may be a renderer or <a
   1.165 +    href="http://www.w3.org/TR/CSS21/conform.html#user-agent">user-agent</a>
   1.166 +    that interprets the semantics of a style sheet and renders documents that
   1.167 +    use style sheets, or it may be a validator that checks style sheets.
   1.168 +
   1.169 +   <dt><dfn id=conform-authoring-tool
   1.170 +    title="conformance::authoring tool">authoring tool</dfn>
   1.171 +
   1.172 +   <dd>A tool that writes a style sheet.
   1.173 +  </dl>
   1.174 +
   1.175 +  <p>A style sheet is conformant to the CSS Conditional Rules Module if it
   1.176 +   meets all of the conformance requirements in the module that are described
   1.177 +   as requirements of style sheets.
   1.178 +
   1.179 +  <p>A processor is conformant to the CSS Conditional Rules Module if it
   1.180 +   meets all applicable conformance requirements in the module that are
   1.181 +   described as requirements of processors. In general, all requirements are
   1.182 +   applicable to renderers. Requirements concerning a part of CSS not
   1.183 +   performed by a processor are not applicable, e.g., requirements related to
   1.184 +   rendering are not applicable to a validator. The inability of a processor
   1.185 +   to correctly render a document due to limitations of the device does not
   1.186 +   make it non-conformant. (For example, a renderer is not required to render
   1.187 +   color on a monochrome monitor.)
   1.188 +
   1.189 +  <p>An authoring tool is conformant to the CSS Conditional Rules Module if
   1.190 +   it writes style sheets that conform to the module and (if it reads CSS) it
   1.191 +   is a conformant processor.
   1.192 +
   1.193 +  <h3 id=partial><span class=secno>9.3. </span> Partial Implementations</h3>
   1.194 +
   1.195 +  <p>So that authors can exploit the forward-compatible parsing rules to
   1.196 +   assign fallback values, CSS renderers <strong>must</strong> treat as
   1.197 +   invalid (and <a
   1.198 +   href="http://www.w3.org/TR/CSS21/conform.html#ignore">ignore as
   1.199 +   appropriate</a>) any at-rules, properties, property values, keywords, and
   1.200 +   other syntactic constructs for which they have no usable level of support.
   1.201 +   In particular, user agents <strong>must not</strong> selectively ignore
   1.202 +   unsupported component values and honor supported values in a single
   1.203 +   multi-value property declaration: if any value is considered invalid (as
   1.204 +   unsupported values must be), CSS requires that the entire declaration be
   1.205 +   ignored.
   1.206 +
   1.207 +  <h3 id=experimental><span class=secno>9.4. </span>Experimental
   1.208 +   Implementations</h3>
   1.209 +
   1.210 +  <p>To avoid clashes with future CSS features, the CSS specifications
   1.211 +   reserve a <a
   1.212 +   href="http://www.w3.org/TR/CSS21/syndata.html#vendor-keywords">prefixed
   1.213 +   syntax</a> for proprietary property and value extensions to CSS. The CSS
   1.214 +   Working Group recommends that experimental implementations of features in
   1.215 +   CSS Working Drafts also use vendor-prefixed property or value names. This
   1.216 +   avoids any incompatibilities with future changes in the draft. Once a
   1.217 +   specification reaches the Candidate Recommendation stage, implementors
   1.218 +   should implement the non-prefixed syntax for any feature they consider to
   1.219 +   be correctly implemented according to spec.
   1.220 +
   1.221 +  <h3 id=cr-exit-criteria><span class=secno>9.5. </span>CR Exit Criteria</h3>
   1.222 +
   1.223 +  <p>For this specification to be advanced to Proposed Recommendation, there
   1.224 +   must be at least two independent, interoperable implementations of each
   1.225 +   feature. Each feature may be implemented by a different set of products,
   1.226 +   there is no requirement that all features be implemented by a single
   1.227 +   product. For the purposes of this criterion, we define the following
   1.228 +   terms:
   1.229 +
   1.230 +  <dl>
   1.231 +   <dt>independent
   1.232 +
   1.233 +   <dd>each implementation must be developed by a different party and cannot
   1.234 +    share, reuse, or derive from code used by another qualifying
   1.235 +    implementation. Sections of code that have no bearing on the
   1.236 +    implementation of this specification are exempt from this requirement.
   1.237 +
   1.238 +   <dt>interoperable
   1.239 +
   1.240 +   <dd>passing the respective test case(s) in the official CSS test suite,
   1.241 +    or, if the implementation is not a Web browser, an equivalent test. Every
   1.242 +    relevant test in the test suite should have an equivalent test created if
   1.243 +    such a user agent (UA) is to be used to claim interoperability. In
   1.244 +    addition if such a UA is to be used to claim interoperability, then there
   1.245 +    must one or more additional UAs which can also pass those equivalent
   1.246 +    tests in the same way for the purpose of interoperability. The equivalent
   1.247 +    tests must be made publicly available for the purposes of peer review.
   1.248 +
   1.249 +   <dt>implementation
   1.250 +
   1.251 +   <dd>a user agent which:
   1.252 +    <ol class=inline>
   1.253 +     <li>implements the specification.
   1.254 +
   1.255 +     <li>is available to the general public. The implementation may be a
   1.256 +      shipping product or other publicly available version (i.e., beta
   1.257 +      version, preview release, or “nightly build”). Non-shipping product
   1.258 +      releases must have implemented the feature(s) for a period of at least
   1.259 +      one month in order to demonstrate stability.
   1.260 +
   1.261 +     <li>is not experimental (i.e., a version specifically designed to pass
   1.262 +      the test suite and is not intended for normal usage going forward).
   1.263 +    </ol>
   1.264 +  </dl>
   1.265 +
   1.266 +  <p>The specification will remain Candidate Recommendation for at least six
   1.267 +   months.
   1.268 +
   1.269 +  <h2 class=no-num id=grammar>Grammar</h2>
   1.270 +
   1.271 +  <p>In order to allow these new @-rules in CSS style sheets, this
   1.272 +   specification modifies the <code>stylesheet</code> production in the <a
   1.273 +   href="http://www.w3.org/TR/CSS21/grammar.html">Appendix G</a> grammar of
   1.274 +   <a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> by replacing
   1.275 +   the <code>media</code> production defined in <a href="#CSS21"
   1.276 +   rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> with the <code>media</code>
   1.277 +   production defined in this one, and additionally inserting <code>|
   1.278 +   supports_rule | document_rule</code> alongside <code>ruleset | media |
   1.279 +   page</code>.
   1.280 +
   1.281 +  <h2 class=no-num id=acknowledgments>Acknowledgments</h2>
   1.282 +
   1.283 +  <p> Thanks to the ideas and feedback from Tab Atkins, <span lang=tr>Tantek
   1.284 +   Çelik</span>, Alex Danilo, Elika Etemad, Pascal Germroth, <span
   1.285 +   lang=de>Björn Höhrmann</span>, Paul Irish, Vitor Menezes, Alex
   1.286 +   Mogilevsky, Chris Moschini, Ben Ward, Zack Weinberg, Estelle Weyl, Boris
   1.287 +   Zbarsky, and all the rest of the <a
   1.288 +   href="http://lists.w3.org/Archives/Public/www-style/">www-style</a>
   1.289 +   community.
   1.290 +
   1.291 +  <h2 class=no-num id=references>References</h2>
   1.292 +
   1.293 +  <h3 class=no-num id=normative-references>Normative references</h3>
   1.294 +  <!--begin-normative-->
   1.295 +  <!-- Sorted by label -->
   1.296 +
   1.297 +  <dl class=bibliography>
   1.298 +   <dt style="display: none"><!-- keeps the doc valid if the DL is empty -->
   1.299 +    <!---->
   1.300 +
   1.301 +   <dt id=CSS21>[CSS21]
   1.302 +
   1.303 +   <dd>Bert Bos; et al. <a
   1.304 +    href="http://www.w3.org/TR/2011/REC-CSS2-20110607"><cite>Cascading Style
   1.305 +    Sheets Level 2 Revision 1 (CSS 2.1) Specification.</cite></a> 7 June
   1.306 +    2011. W3C Recommendation. URL: <a
   1.307 +    href="http://www.w3.org/TR/2011/REC-CSS2-20110607">http://www.w3.org/TR/2011/REC-CSS2-20110607</a>
   1.308 +   </dd>
   1.309 +   <!---->
   1.310 +
   1.311 +   <dt id=CSS3-ANIMATIONS>[CSS3-ANIMATIONS]
   1.312 +
   1.313 +   <dd>Dean Jackson; et al. <a
   1.314 +    href="http://www.w3.org/TR/2012/WD-css3-animations-20120403/"><cite>CSS
   1.315 +    Animations.</cite></a> 3 April 2012. W3C Working Draft. (Work in
   1.316 +    progress.) URL: <a
   1.317 +    href="http://www.w3.org/TR/2012/WD-css3-animations-20120403/">http://www.w3.org/TR/2012/WD-css3-animations-20120403/</a>
   1.318 +   </dd>
   1.319 +   <!---->
   1.320 +
   1.321 +   <dt id=CSS3-FONTS>[CSS3-FONTS]
   1.322 +
   1.323 +   <dd>John Daggett. <a
   1.324 +    href="http://www.w3.org/TR/2012/WD-css3-fonts-20120823/"><cite>CSS Fonts
   1.325 +    Module Level 3.</cite></a> 23 August 2012. W3C Working Draft. (Work in
   1.326 +    progress.) URL: <a
   1.327 +    href="http://www.w3.org/TR/2012/WD-css3-fonts-20120823/">http://www.w3.org/TR/2012/WD-css3-fonts-20120823/</a>
   1.328 +   </dd>
   1.329 +   <!---->
   1.330 +
   1.331 +   <dt id=ECMA-262-5.1>[ECMA-262-5.1]
   1.332 +
   1.333 +   <dd><a
   1.334 +    href="http://www.ecma-international.org/publications/standards/Ecma-262.htm"><cite>ECMAScript
   1.335 +    Language Specification, Edition 5.1.</cite></a> June 2011. ISO/IEC
   1.336 +    16262:2011. URL: <a
   1.337 +    href="http://www.ecma-international.org/publications/standards/Ecma-262.htm">http://www.ecma-international.org/publications/standards/Ecma-262.htm</a>
   1.338 +   </dd>
   1.339 +   <!---->
   1.340 +
   1.341 +   <dt id=MEDIAQ>[MEDIAQ]
   1.342 +
   1.343 +   <dd>Florian Rivoal. <a
   1.344 +    href="http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/"><cite>Media
   1.345 +    Queries.</cite></a> 19 June 2012. W3C Recommendation. URL: <a
   1.346 +    href="http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/">http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/</a>
   1.347 +   </dd>
   1.348 +   <!---->
   1.349 +
   1.350 +   <dt id=RFC2119>[RFC2119]
   1.351 +
   1.352 +   <dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key
   1.353 +    words for use in RFCs to Indicate Requirement Levels.</cite></a> Internet
   1.354 +    RFC 2119. URL: <a
   1.355 +    href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a>
   1.356 +   </dd>
   1.357 +   <!---->
   1.358 +
   1.359 +   <dt id=URI>[URI]
   1.360 +
   1.361 +   <dd>T. Berners-Lee; R. Fielding; L. Masinter. <a
   1.362 +    href="http://www.ietf.org/rfc/rfc3986.txt"><cite>Uniform Resource
   1.363 +    Identifiers (URI): generic syntax.</cite></a> January 2005. Internet RFC
   1.364 +    3986. URL: <a
   1.365 +    href="http://www.ietf.org/rfc/rfc3986.txt">http://www.ietf.org/rfc/rfc3986.txt</a>
   1.366 +   </dd>
   1.367 +   <!---->
   1.368 +  </dl>
   1.369 +  <!--end-normative-->
   1.370 +
   1.371 +  <h3 class=no-num id=other-references>Other references</h3>
   1.372 +  <!--begin-informative-->
   1.373 +  <!-- Sorted by label -->
   1.374 +
   1.375 +  <dl class=bibliography>
   1.376 +   <dt style="display: none"><!-- keeps the doc valid if the DL is empty -->
   1.377 +    <!---->
   1.378 +
   1.379 +   <dt id=CSS1>[CSS1]
   1.380 +
   1.381 +   <dd>Håkon Wium Lie; Bert Bos. <a
   1.382 +    href="http://www.w3.org/TR/2008/REC-CSS1-20080411"><cite>Cascading Style
   1.383 +    Sheets (CSS1) Level 1 Specification.</cite></a> 11 April 2008. W3C
   1.384 +    Recommendation. URL: <a
   1.385 +    href="http://www.w3.org/TR/2008/REC-CSS1-20080411">http://www.w3.org/TR/2008/REC-CSS1-20080411</a>
   1.386 +   </dd>
   1.387 +   <!---->
   1.388 +
   1.389 +   <dt id=CSS3-TRANSITIONS>[CSS3-TRANSITIONS]
   1.390 +
   1.391 +   <dd>Dean Jackson; et al. <a
   1.392 +    href="http://www.w3.org/TR/2012/WD-css3-transitions-20120403/"><cite>CSS
   1.393 +    Transitions.</cite></a> 3 April 2012. W3C Working Draft. (Work in
   1.394 +    progress.) URL: <a
   1.395 +    href="http://www.w3.org/TR/2012/WD-css3-transitions-20120403/">http://www.w3.org/TR/2012/WD-css3-transitions-20120403/</a>
   1.396 +   </dd>
   1.397 +   <!---->
   1.398 +
   1.399 +   <dt id=HTML5>[HTML5]
   1.400 +
   1.401 +   <dd>Ian Hickson. <a
   1.402 +    href="http://www.w3.org/TR/2011/WD-html5-20110525/"><cite>HTML5.</cite></a>
   1.403 +    25 May 2011. W3C Working Draft. (Work in progress.) URL: <a
   1.404 +    href="http://www.w3.org/TR/2011/WD-html5-20110525/">http://www.w3.org/TR/2011/WD-html5-20110525/</a>
   1.405 +   </dd>
   1.406 +   <!---->
   1.407 +
   1.408 +   <dt id=SVG11>[SVG11]
   1.409 +
   1.410 +   <dd>Erik Dahlström; et al. <a
   1.411 +    href="http://www.w3.org/TR/2011/REC-SVG11-20110816/"><cite>Scalable
   1.412 +    Vector Graphics (SVG) 1.1 (Second Edition).</cite></a> 16 August 2011.
   1.413 +    W3C Recommendation. URL: <a
   1.414 +    href="http://www.w3.org/TR/2011/REC-SVG11-20110816/">http://www.w3.org/TR/2011/REC-SVG11-20110816/</a>
   1.415 +   </dd>
   1.416 +   <!---->
   1.417 +  </dl>
   1.418 +  <!--end-informative-->
   1.419 +
   1.420 +  <h2 class=no-num id=index>Index</h2>
   1.421 +  <!--begin-index-->
   1.422 +
   1.423 +  <ul class=indexlist>
   1.424 +   <li>conditional group rules, <a href="#conditional-group-rules"
   1.425 +    title="conditional group rules"><strong>2.</strong></a>
   1.426 +
   1.427 +   <li>conformance
   1.428      <ul>
   1.429 -     <li><a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>
   1.430 +     <li>authoring tool, <a href="#conform-authoring-tool"
   1.431 +      title="conformance, authoring tool"><strong>9.2.</strong></a>
   1.432 +
   1.433 +     <li>processor, <a href="#conform-processor"
   1.434 +      title="conformance, processor"><strong>9.2.</strong></a>
   1.435 +
   1.436 +     <li>style sheet, <a href="#conform-style-sheet"
   1.437 +      title="conformance, style sheet"><strong>9.2.</strong></a>
   1.438      </ul>
   1.439  
   1.440 -    <p>All of the conformance requirements of all base modules are
   1.441 -     incorporated as conformance requirements of this module, except where
   1.442 -     overridden by this module.
   1.443 +   <li><a href="#CSS-interface"><code>CSS</code></a>, <a
   1.444 +    href="#CSS-interface" title=CSS><strong>8.6.</strong></a>
   1.445  
   1.446 -    <p>Additionally, all conformance requirements related to validity of
   1.447 -     syntax in this module and all of its base modules are to be interpreted
   1.448 -     as though all syntax in all of those modules is valid.
   1.449 +   <li><a href="#cssconditionrule"><code>CSSConditionRule</code></a>, <a
   1.450 +    href="#cssconditionrule" title=CSSConditionRule><strong>8.2.</strong></a>
   1.451  
   1.452 -    <div class=example>
   1.453 -     <p>For example, this means that grammar presented in modules other than
   1.454 -      <a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> must obey
   1.455 -      the requirements that <a href="#CSS21"
   1.456 -      rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> defines for the parsing of
   1.457 -      properties, and that requirements for handling invalid syntax in <a
   1.458 -      href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> do not treat
   1.459 -      syntax added by other modules as invalid.
   1.460 -    </div>
   1.461 +   <li><a href="#cssdocumentrule"><code>CSSDocumentRule</code></a>, <a
   1.462 +    href="#cssdocumentrule" title=CSSDocumentRule><strong>8.5.</strong></a>
   1.463  
   1.464 -    <p>Additionally, the set of valid syntax can be increased by the
   1.465 -     conformance of a style sheet or processor to additional modules; use of
   1.466 -     such syntax does not make a style sheet nonconformant and failure to
   1.467 -     treat such syntax as invalid does not make a processor nonconformant.
   1.468 +   <li><a href="#cssmediarule"><code>CSSMediaRule</code></a>, <a
   1.469 +    href="#cssmediarule" title=CSSMediaRule><strong>8.3.</strong></a>
   1.470  
   1.471 -    <h3 id=conformance-classes><span class=secno>9.2. </span>Conformance
   1.472 -     Classes</h3>
   1.473 +   <li><a href="#csssupportsrule"><code>CSSSupportsRule</code></a>, <a
   1.474 +    href="#csssupportsrule" title=CSSSupportsRule><strong>8.4.</strong></a>
   1.475  
   1.476 -    <p>Conformance to the CSS Conditional Rules Module is defined for three
   1.477 -     conformance classes:
   1.478 +   <li>‘<code class=css>@document</code>’ rule, <a href="#document-rule"
   1.479 +    title="'@document' rule"><strong>7.</strong></a>
   1.480  
   1.481 -    <dl>
   1.482 -     <dt><dfn id=conform-style-sheet title="conformance::style sheet">style
   1.483 -      sheet</dfn>
   1.484 +   <li>domain(), <a href="#url-domain"
   1.485 +    title="domain()"><strong>7.</strong></a>
   1.486  
   1.487 -     <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#style-sheet">CSS
   1.488 -      style sheet</a>.
   1.489 +   <li>domain matching function, <a href="#domain-matching-function"
   1.490 +    title="domain matching function"><strong>7.</strong></a>
   1.491  
   1.492 -     <dt><dfn id=conform-processor
   1.493 -      title="conformance::processor">processor</dfn>
   1.494 +   <li>exact url matching function, <a href="#exact-url-matching-function"
   1.495 +    title="exact url matching function"><strong>7.</strong></a>
   1.496  
   1.497 -     <dd>A tool that reads CSS style sheets: it may be a renderer or <a
   1.498 -      href="http://www.w3.org/TR/CSS21/conform.html#user-agent">user-agent</a>
   1.499 -      that interprets the semantics of a style sheet and renders documents
   1.500 -      that use style sheets, or it may be a validator that checks style
   1.501 -      sheets.
   1.502 +   <li>group rule body, <a href="#group-rule-body"
   1.503 +    title="group rule body"><strong>3.</strong></a>
   1.504  
   1.505 -     <dt><dfn id=conform-authoring-tool
   1.506 -      title="conformance::authoring tool">authoring tool</dfn>
   1.507 +   <li>‘<code class=css>@media</code>’ rule, <a href="#media-rule"
   1.508 +    title="'@media' rule"><strong>5.</strong></a>
   1.509  
   1.510 -     <dd>A tool that writes a style sheet.
   1.511 -    </dl>
   1.512 +   <li>regexp(), <a href="#url-regexp"
   1.513 +    title="regexp()"><strong>7.</strong></a>
   1.514  
   1.515 -    <p>A style sheet is conformant to the CSS Conditional Rules Module if it
   1.516 -     meets all of the conformance requirements in the module that are
   1.517 -     described as requirements of style sheets.
   1.518 +   <li>support, <a href="#dfn-support"
   1.519 +    title=support><strong>6.1.</strong></a>
   1.520  
   1.521 -    <p>A processor is conformant to the CSS Conditional Rules Module if it
   1.522 -     meets all applicable conformance requirements in the module that are
   1.523 -     described as requirements of processors. In general, all requirements
   1.524 -     are applicable to renderers. Requirements concerning a part of CSS not
   1.525 -     performed by a processor are not applicable, e.g., requirements related
   1.526 -     to rendering are not applicable to a validator. The inability of a
   1.527 -     processor to correctly render a document due to limitations of the
   1.528 -     device does not make it non-conformant. (For example, a renderer is not
   1.529 -     required to render color on a monochrome monitor.)
   1.530 +   <li>supports_condition, <a href="#supportscondition"
   1.531 +    title="supports_condition"><strong>6.</strong></a>
   1.532  
   1.533 -    <p>An authoring tool is conformant to the CSS Conditional Rules Module if
   1.534 -     it writes style sheets that conform to the module and (if it reads CSS)
   1.535 -     it is a conformant processor.
   1.536 +   <li>supports_condition_in_parens, <a href="#supportsconditioninparens"
   1.537 +    title="supports_condition_in_parens"><strong>6.</strong></a>
   1.538  
   1.539 -    <h3 id=partial><span class=secno>9.3. </span> Partial Implementations</h3>
   1.540 +   <li>supports_conjunction, <a href="#supportsconjunction"
   1.541 +    title="supports_conjunction"><strong>6.</strong></a>
   1.542  
   1.543 -    <p>So that authors can exploit the forward-compatible parsing rules to
   1.544 -     assign fallback values, CSS renderers <strong>must</strong> treat as
   1.545 -     invalid (and <a
   1.546 -     href="http://www.w3.org/TR/CSS21/conform.html#ignore">ignore as
   1.547 -     appropriate</a>) any at-rules, properties, property values, keywords,
   1.548 -     and other syntactic constructs for which they have no usable level of
   1.549 -     support. In particular, user agents <strong>must not</strong>
   1.550 -     selectively ignore unsupported component values and honor supported
   1.551 -     values in a single multi-value property declaration: if any value is
   1.552 -     considered invalid (as unsupported values must be), CSS requires that
   1.553 -     the entire declaration be ignored.
   1.554 +   <li>supports_declaration_condition, <a
   1.555 +    href="#supportsdeclarationcondition"
   1.556 +    title="supports_declaration_condition"><strong>6.</strong></a>
   1.557  
   1.558 -    <h3 id=experimental><span class=secno>9.4. </span>Experimental
   1.559 -     Implementations</h3>
   1.560 +   <li>supports_disjunction, <a href="#supportsdisjunction"
   1.561 +    title="supports_disjunction"><strong>6.</strong></a>
   1.562  
   1.563 -    <p>To avoid clashes with future CSS features, the CSS specifications
   1.564 -     reserve a <a
   1.565 -     href="http://www.w3.org/TR/CSS21/syndata.html#vendor-keywords">prefixed
   1.566 -     syntax</a> for proprietary property and value extensions to CSS. The CSS
   1.567 -     Working Group recommends that experimental implementations of features
   1.568 -     in CSS Working Drafts also use vendor-prefixed property or value names.
   1.569 -     This avoids any incompatibilities with future changes in the draft. Once
   1.570 -     a specification reaches the Candidate Recommendation stage, implementors
   1.571 -     should implement the non-prefixed syntax for any feature they consider
   1.572 -     to be correctly implemented according to spec.
   1.573 +   <li>supports_negation, <a href="#supportsnegation"
   1.574 +    title="supports_negation"><strong>6.</strong></a>
   1.575  
   1.576 -    <h3 id=cr-exit-criteria><span class=secno>9.5. </span>CR Exit Criteria</h3>
   1.577 +   <li>‘<a href="#dfn-support"><code class=css>@supports</code></a>’
   1.578 +    rule, <a href="#supports-rule"
   1.579 +    title="'@supports' rule"><strong>6.</strong></a>
   1.580  
   1.581 -    <p>For this specification to be advanced to Proposed Recommendation,
   1.582 -     there must be at least two independent, interoperable implementations of
   1.583 -     each feature. Each feature may be implemented by a different set of
   1.584 -     products, there is no requirement that all features be implemented by a
   1.585 -     single product. For the purposes of this criterion, we define the
   1.586 -     following terms:
   1.587 +   <li>supports_rule, <a href="#supportsrule"
   1.588 +    title="supports_rule"><strong>6.</strong></a>
   1.589  
   1.590 -    <dl>
   1.591 -     <dt>independent
   1.592 +   <li>url(), <a href="#url-exact" title="url()"><strong>7.</strong></a>
   1.593  
   1.594 -     <dd>each implementation must be developed by a different party and
   1.595 -      cannot share, reuse, or derive from code used by another qualifying
   1.596 -      implementation. Sections of code that have no bearing on the
   1.597 -      implementation of this specification are exempt from this requirement.
   1.598 +   <li>URL matching functions, <a href="#url-matching-functions"
   1.599 +    title="URL matching functions"><strong>7.</strong></a>
   1.600 +    <ul>
   1.601 +     <li>domain, <a href="#url-domain"
   1.602 +      title="URL matching functions, domain"><strong>7.</strong></a>
   1.603  
   1.604 -     <dt>interoperable
   1.605 +     <li>exact, <a href="#url-exact"
   1.606 +      title="URL matching functions, exact"><strong>7.</strong></a>
   1.607  
   1.608 -     <dd>passing the respective test case(s) in the official CSS test suite,
   1.609 -      or, if the implementation is not a Web browser, an equivalent test.
   1.610 -      Every relevant test in the test suite should have an equivalent test
   1.611 -      created if such a user agent (UA) is to be used to claim
   1.612 -      interoperability. In addition if such a UA is to be used to claim
   1.613 -      interoperability, then there must one or more additional UAs which can
   1.614 -      also pass those equivalent tests in the same way for the purpose of
   1.615 -      interoperability. The equivalent tests must be made publicly available
   1.616 -      for the purposes of peer review.
   1.617 +     <li>prefix, <a href="#url-prefix"
   1.618 +      title="URL matching functions, prefix"><strong>7.</strong></a>
   1.619  
   1.620 -     <dt>implementation
   1.621 +     <li>regular expression, <a href="#url-regexp"
   1.622 +      title="URL matching functions, regular expression"><strong>7.</strong></a>
   1.623 +    </ul>
   1.624  
   1.625 -     <dd>a user agent which:
   1.626 -      <ol class=inline>
   1.627 -       <li>implements the specification.
   1.628 +   <li>URL of the document being styled, <a
   1.629 +    href="#url-of-the-document-being-styled"
   1.630 +    title="URL of the document being styled"><strong>7.</strong></a>
   1.631  
   1.632 -       <li>is available to the general public. The implementation may be a
   1.633 -        shipping product or other publicly available version (i.e., beta
   1.634 -        version, preview release, or “nightly build”). Non-shipping
   1.635 -        product releases must have implemented the feature(s) for a period of
   1.636 -        at least one month in order to demonstrate stability.
   1.637 +   <li>url-prefix(), <a href="#url-prefix"
   1.638 +    title="url-prefix()"><strong>7.</strong></a>
   1.639  
   1.640 -       <li>is not experimental (i.e., a version specifically designed to pass
   1.641 -        the test suite and is not intended for normal usage going forward).
   1.642 -      </ol>
   1.643 -    </dl>
   1.644 -
   1.645 -    <p>The specification will remain Candidate Recommendation for at least
   1.646 -     six months.
   1.647 -
   1.648 -    <h2 class=no-num id=grammar>Grammar</h2>
   1.649 -
   1.650 -    <p>In order to allow these new @-rules in CSS style sheets, this
   1.651 -     specification modifies the <code>stylesheet</code> production in the <a
   1.652 -     href="http://www.w3.org/TR/CSS21/grammar.html">Appendix G</a> grammar of
   1.653 -     <a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> by
   1.654 -     replacing the <code>media</code> production defined in <a href="#CSS21"
   1.655 -     rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> with the <code>media</code>
   1.656 -     production defined in this one, and additionally inserting <code>|
   1.657 -     supports_rule | document_rule</code> alongside <code>ruleset | media |
   1.658 -     page</code>.
   1.659 -
   1.660 -    <h2 class=no-num id=acknowledgments>Acknowledgments</h2>
   1.661 -
   1.662 -    <p> Thanks to the ideas and feedback from Tab Atkins, <span
   1.663 -     lang=tr>Tantek Çelik</span>, Alex Danilo, Elika Etemad, Pascal
   1.664 -     Germroth, <span lang=de>Björn Höhrmann</span>, Paul Irish, Vitor
   1.665 -     Menezes, Alex Mogilevsky, Chris Moschini, Ben Ward, Zack Weinberg,
   1.666 -     Estelle Weyl, Boris Zbarsky, and all the rest of the <a
   1.667 -     href="http://lists.w3.org/Archives/Public/www-style/">www-style</a>
   1.668 -     community.
   1.669 -
   1.670 -    <h2 class=no-num id=references>References</h2>
   1.671 -
   1.672 -    <h3 class=no-num id=normative-references>Normative references</h3>
   1.673 -    <!--begin-normative--> <!-- Sorted by label -->
   1.674 -    <dl class=bibliography>
   1.675 -     <dt
   1.676 -      style="display: none"><!-- keeps the doc valid if the DL is empty -->
   1.677 -      <!---->
   1.678 -
   1.679 -     <dt id=CSS21>[CSS21]
   1.680 -
   1.681 -     <dd>Bert Bos; et al. <a
   1.682 -      href="http://www.w3.org/TR/2011/REC-CSS2-20110607"><cite>Cascading
   1.683 -      Style Sheets Level 2 Revision 1 (CSS 2.1) Specification.</cite></a> 7
   1.684 -      June 2011. W3C Recommendation. URL: <a
   1.685 -      href="http://www.w3.org/TR/2011/REC-CSS2-20110607">http://www.w3.org/TR/2011/REC-CSS2-20110607</a>
   1.686 -     </dd>
   1.687 -     <!---->
   1.688 -
   1.689 -     <dt id=CSS3-ANIMATIONS>[CSS3-ANIMATIONS]
   1.690 -
   1.691 -     <dd>Dean Jackson; et al. <a
   1.692 -      href="http://www.w3.org/TR/2012/WD-css3-animations-20120403/"><cite>CSS
   1.693 -      Animations.</cite></a> 3 April 2012. W3C Working Draft. (Work in
   1.694 -      progress.) URL: <a
   1.695 -      href="http://www.w3.org/TR/2012/WD-css3-animations-20120403/">http://www.w3.org/TR/2012/WD-css3-animations-20120403/</a>
   1.696 -     </dd>
   1.697 -     <!---->
   1.698 -
   1.699 -     <dt id=CSS3-FONTS>[CSS3-FONTS]
   1.700 -
   1.701 -     <dd>John Daggett. <a
   1.702 -      href="http://www.w3.org/TR/2012/WD-css3-fonts-20120823/"><cite>CSS
   1.703 -      Fonts Module Level 3.</cite></a> 23 August 2012. W3C Working Draft.
   1.704 -      (Work in progress.) URL: <a
   1.705 -      href="http://www.w3.org/TR/2012/WD-css3-fonts-20120823/">http://www.w3.org/TR/2012/WD-css3-fonts-20120823/</a>
   1.706 -     </dd>
   1.707 -     <!---->
   1.708 -
   1.709 -     <dt id=ECMA-262-5.1>[ECMA-262-5.1]
   1.710 -
   1.711 -     <dd><a
   1.712 -      href="http://www.ecma-international.org/publications/standards/Ecma-262.htm"><cite>ECMAScript
   1.713 -      Language Specification, Edition 5.1.</cite></a> June 2011. ISO/IEC
   1.714 -      16262:2011. URL: <a
   1.715 -      href="http://www.ecma-international.org/publications/standards/Ecma-262.htm">http://www.ecma-international.org/publications/standards/Ecma-262.htm</a>
   1.716 -     </dd>
   1.717 -     <!---->
   1.718 -
   1.719 -     <dt id=MEDIAQ>[MEDIAQ]
   1.720 -
   1.721 -     <dd>Florian Rivoal. <a
   1.722 -      href="http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/"><cite>Media
   1.723 -      Queries.</cite></a> 19 June 2012. W3C Recommendation. URL: <a
   1.724 -      href="http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/">http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/</a>
   1.725 -     </dd>
   1.726 -     <!---->
   1.727 -
   1.728 -     <dt id=RFC2119>[RFC2119]
   1.729 -
   1.730 -     <dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key
   1.731 -      words for use in RFCs to Indicate Requirement Levels.</cite></a>
   1.732 -      Internet RFC 2119. URL: <a
   1.733 -      href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a>
   1.734 -     </dd>
   1.735 -     <!---->
   1.736 -
   1.737 -     <dt id=URI>[URI]
   1.738 -
   1.739 -     <dd>T. Berners-Lee; R. Fielding; L. Masinter. <a
   1.740 -      href="http://www.ietf.org/rfc/rfc3986.txt"><cite>Uniform Resource
   1.741 -      Identifiers (URI): generic syntax.</cite></a> January 2005. Internet
   1.742 -      RFC 3986. URL: <a
   1.743 -      href="http://www.ietf.org/rfc/rfc3986.txt">http://www.ietf.org/rfc/rfc3986.txt</a>
   1.744 -     </dd>
   1.745 -     <!---->
   1.746 -    </dl>
   1.747 -    <!--end-normative-->
   1.748 -    <h3 class=no-num id=other-references>Other references</h3>
   1.749 -    <!--begin-informative--> <!-- Sorted by label -->
   1.750 -    <dl class=bibliography>
   1.751 -     <dt
   1.752 -      style="display: none"><!-- keeps the doc valid if the DL is empty -->
   1.753 -      <!---->
   1.754 -
   1.755 -     <dt id=CSS1>[CSS1]
   1.756 -
   1.757 -     <dd>Håkon Wium Lie; Bert Bos. <a
   1.758 -      href="http://www.w3.org/TR/2008/REC-CSS1-20080411"><cite>Cascading
   1.759 -      Style Sheets (CSS1) Level 1 Specification.</cite></a> 11 April 2008.
   1.760 -      W3C Recommendation. URL: <a
   1.761 -      href="http://www.w3.org/TR/2008/REC-CSS1-20080411">http://www.w3.org/TR/2008/REC-CSS1-20080411</a>
   1.762 -     </dd>
   1.763 -     <!---->
   1.764 -
   1.765 -     <dt id=CSS3-TRANSITIONS>[CSS3-TRANSITIONS]
   1.766 -
   1.767 -     <dd>Dean Jackson; et al. <a
   1.768 -      href="http://www.w3.org/TR/2012/WD-css3-transitions-20120403/"><cite>CSS
   1.769 -      Transitions.</cite></a> 3 April 2012. W3C Working Draft. (Work in
   1.770 -      progress.) URL: <a
   1.771 -      href="http://www.w3.org/TR/2012/WD-css3-transitions-20120403/">http://www.w3.org/TR/2012/WD-css3-transitions-20120403/</a>
   1.772 -     </dd>
   1.773 -     <!---->
   1.774 -
   1.775 -     <dt id=HTML5>[HTML5]
   1.776 -
   1.777 -     <dd>Ian Hickson. <a
   1.778 -      href="http://www.w3.org/TR/2011/WD-html5-20110525/"><cite>HTML5.</cite></a>
   1.779 -      25 May 2011. W3C Working Draft. (Work in progress.) URL: <a
   1.780 -      href="http://www.w3.org/TR/2011/WD-html5-20110525/">http://www.w3.org/TR/2011/WD-html5-20110525/</a>
   1.781 -     </dd>
   1.782 -     <!---->
   1.783 -
   1.784 -     <dt id=SVG11>[SVG11]
   1.785 -
   1.786 -     <dd>Erik Dahlström; et al. <a
   1.787 -      href="http://www.w3.org/TR/2011/REC-SVG11-20110816/"><cite>Scalable
   1.788 -      Vector Graphics (SVG) 1.1 (Second Edition).</cite></a> 16 August 2011.
   1.789 -      W3C Recommendation. URL: <a
   1.790 -      href="http://www.w3.org/TR/2011/REC-SVG11-20110816/">http://www.w3.org/TR/2011/REC-SVG11-20110816/</a>
   1.791 -     </dd>
   1.792 -     <!---->
   1.793 -    </dl>
   1.794 -    <!--end-informative-->
   1.795 -    <h2 class=no-num id=index>Index</h2>
   1.796 -    <!--begin-index-->
   1.797 -    <ul class=indexlist>
   1.798 -     <li>conditional group rules, <a href="#conditional-group-rules"
   1.799 -      title="conditional group rules"><strong>2.</strong></a>
   1.800 -
   1.801 -     <li>conformance
   1.802 -      <ul>
   1.803 -       <li>authoring tool, <a href="#conform-authoring-tool"
   1.804 -        title="conformance, authoring tool"><strong>9.2.</strong></a>
   1.805 -
   1.806 -       <li>processor, <a href="#conform-processor"
   1.807 -        title="conformance, processor"><strong>9.2.</strong></a>
   1.808 -
   1.809 -       <li>style sheet, <a href="#conform-style-sheet"
   1.810 -        title="conformance, style sheet"><strong>9.2.</strong></a>
   1.811 -      </ul>
   1.812 -
   1.813 -     <li><a href="#CSS-interface"><code>CSS</code></a>, <a
   1.814 -      href="#CSS-interface" title=CSS><strong>8.6.</strong></a>
   1.815 -
   1.816 -     <li><a href="#cssconditionrule"><code>CSSConditionRule</code></a>, <a
   1.817 -      href="#cssconditionrule"
   1.818 -      title=CSSConditionRule><strong>8.2.</strong></a>
   1.819 -
   1.820 -     <li><a href="#cssdocumentrule"><code>CSSDocumentRule</code></a>, <a
   1.821 -      href="#cssdocumentrule" title=CSSDocumentRule><strong>8.5.</strong></a>
   1.822 -
   1.823 -     <li><a href="#cssmediarule"><code>CSSMediaRule</code></a>, <a
   1.824 -      href="#cssmediarule" title=CSSMediaRule><strong>8.3.</strong></a>
   1.825 -
   1.826 -     <li><a href="#csssupportsrule"><code>CSSSupportsRule</code></a>, <a
   1.827 -      href="#csssupportsrule" title=CSSSupportsRule><strong>8.4.</strong></a>
   1.828 -
   1.829 -     <li>‘<code class=css>@document</code>’ rule, <a
   1.830 -      href="#document-rule" title="'@document' rule"><strong>7.</strong></a>
   1.831 -
   1.832 -     <li>domain(), <a href="#url-domain"
   1.833 -      title="domain()"><strong>7.</strong></a>
   1.834 -
   1.835 -     <li>domain matching function, <a href="#domain-matching-function"
   1.836 -      title="domain matching function"><strong>7.</strong></a>
   1.837 -
   1.838 -     <li>exact url matching function, <a href="#exact-url-matching-function"
   1.839 -      title="exact url matching function"><strong>7.</strong></a>
   1.840 -
   1.841 -     <li>group rule body, <a href="#group-rule-body"
   1.842 -      title="group rule body"><strong>3.</strong></a>
   1.843 -
   1.844 -     <li>‘<code class=css>@media</code>’ rule, <a href="#media-rule"
   1.845 -      title="'@media' rule"><strong>5.</strong></a>
   1.846 -
   1.847 -     <li>regexp(), <a href="#url-regexp"
   1.848 -      title="regexp()"><strong>7.</strong></a>
   1.849 -
   1.850 -     <li>support, <a href="#dfn-support"
   1.851 -      title=support><strong>6.1.</strong></a>
   1.852 -
   1.853 -     <li>supports_condition, <a href="#supportscondition"
   1.854 -      title="supports_condition"><strong>6.</strong></a>
   1.855 -
   1.856 -     <li>supports_condition_in_parens, <a href="#supportsconditioninparens"
   1.857 -      title="supports_condition_in_parens"><strong>6.</strong></a>
   1.858 -
   1.859 -     <li>supports_conjunction, <a href="#supportsconjunction"
   1.860 -      title="supports_conjunction"><strong>6.</strong></a>
   1.861 -
   1.862 -     <li>supports_declaration_condition, <a
   1.863 -      href="#supportsdeclarationcondition"
   1.864 -      title="supports_declaration_condition"><strong>6.</strong></a>
   1.865 -
   1.866 -     <li>supports_disjunction, <a href="#supportsdisjunction"
   1.867 -      title="supports_disjunction"><strong>6.</strong></a>
   1.868 -
   1.869 -     <li>supports_negation, <a href="#supportsnegation"
   1.870 -      title="supports_negation"><strong>6.</strong></a>
   1.871 -
   1.872 -     <li>‘<a href="#dfn-support"><code class=css>@supports</code></a>’
   1.873 -      rule, <a href="#supports-rule"
   1.874 -      title="'@supports' rule"><strong>6.</strong></a>
   1.875 -
   1.876 -     <li>supports_rule, <a href="#supportsrule"
   1.877 -      title="supports_rule"><strong>6.</strong></a>
   1.878 -
   1.879 -     <li>url(), <a href="#url-exact" title="url()"><strong>7.</strong></a>
   1.880 -
   1.881 -     <li>URL matching functions, <a href="#url-matching-functions"
   1.882 -      title="URL matching functions"><strong>7.</strong></a>
   1.883 -      <ul>
   1.884 -       <li>domain, <a href="#url-domain"
   1.885 -        title="URL matching functions, domain"><strong>7.</strong></a>
   1.886 -
   1.887 -       <li>exact, <a href="#url-exact"
   1.888 -        title="URL matching functions, exact"><strong>7.</strong></a>
   1.889 -
   1.890 -       <li>prefix, <a href="#url-prefix"
   1.891 -        title="URL matching functions, prefix"><strong>7.</strong></a>
   1.892 -
   1.893 -       <li>regular expression, <a href="#url-regexp"
   1.894 -        title="URL matching functions, regular expression"><strong>7.</strong></a>
   1.895 -      </ul>
   1.896 -
   1.897 -     <li>URL of the document being styled, <a
   1.898 -      href="#url-of-the-document-being-styled"
   1.899 -      title="URL of the document being styled"><strong>7.</strong></a>
   1.900 -
   1.901 -     <li>url-prefix(), <a href="#url-prefix"
   1.902 -      title="url-prefix()"><strong>7.</strong></a>
   1.903 -
   1.904 -     <li>url prefix matching function, <a
   1.905 -      href="#url-prefix-matching-function"
   1.906 -      title="url prefix matching function"><strong>7.</strong></a>
   1.907 -    </ul>
   1.908 -    <!--end-index-->
   1.909 -  </dl>
   1.910 +   <li>url prefix matching function, <a href="#url-prefix-matching-function"
   1.911 +    title="url prefix matching function"><strong>7.</strong></a>
   1.912 +  </ul>
   1.913 +  <!--end-index-->
   1.914  </html>
   1.915  <!-- Keep this comment at the end of the file
   1.916  Local variables:
     2.1 --- a/css3-conditional/Overview.src.html	Fri Aug 31 13:30:08 2012 -0700
     2.2 +++ b/css3-conditional/Overview.src.html	Fri Aug 31 13:36:14 2012 -0700
     2.3 @@ -861,18 +861,9 @@
     2.4    <dd>The <code>conditionText</code> attribute (defined on the <code>CSSConditionRule</code> parent rule),
     2.5      on getting, must return the value of <code>media.mediaText</code> on the rule.
     2.6  
     2.7 -    <p>On setting the <code>conditionText</code> attribute these steps must be run:
     2.8 -
     2.9 -    <ol>
    2.10 -      <li>Trim the given value of white space.
    2.11 -      <li>If the given value matches the grammar of the 
    2.12 -        appropriate condition production for the given rule, 
    2.13 -        replace the associated CSS condition with the given value.
    2.14 -        Also, construct a new <code>MediaList</code> object,
    2.15 -        passing the given value as the constructor's sole argument,
    2.16 -        and replace the rule's <code>media</code> attribute with it.
    2.17 -      <li>Otherwise, do nothing.
    2.18 -    </ol>
    2.19 +    <p>Setting the <code>conditionText</code> attribute
    2.20 +      must set the <code>media.mediaText</code> attribute on the rule.
    2.21 +</dl>
    2.22  
    2.23  
    2.24  <h3 id="the-csssupportsrule-interface">
    2.25 @@ -880,7 +871,7 @@
    2.26  
    2.27  <p>The <dfn><code>CSSSupportsRule</code></dfn> interface represents a ''@supports'' rule.</p>
    2.28  
    2.29 -<pre class='idl'>interface CSSSupportsRule : CSSRule {
    2.30 +<pre class='idl'>interface CSSSupportsRule : CSSConditionRule {
    2.31  }</pre>
    2.32  
    2.33  
    2.34 @@ -889,7 +880,7 @@
    2.35  
    2.36  <p>The <dfn><code>CSSDocumentRule</code></dfn> interface represents a ''@document'' rule.</p>
    2.37  
    2.38 -<pre class='idl'>interface CSSDocumentRule : CSSRule {
    2.39 +<pre class='idl'>interface CSSDocumentRule : CSSConditionRule {
    2.40  }</pre>
    2.41  
    2.42  

mercurial