[css-conditional] Mark up the at-rule definitions properly for Shepherd.

Sat, 09 Nov 2013 14:32:58 -0800

author
Tab Atkins Jr. <jackalmage@gmail.com>
date
Sat, 09 Nov 2013 14:32:58 -0800
changeset 9511
ea517c04368d
parent 9510
b08a15c5eaa0
child 9512
a7c4e0462a3f

[css-conditional] Mark up the at-rule definitions properly for Shepherd.

css-conditional/Overview.html file | annotate | diff | comparison | revisions
css-conditional/Overview.src.html file | annotate | diff | comparison | revisions
     1.1 --- a/css-conditional/Overview.html	Sat Nov 09 17:41:21 2013 +0100
     1.2 +++ b/css-conditional/Overview.html	Sat Nov 09 14:32:58 2013 -0800
     1.3 @@ -12,7 +12,7 @@
     1.4     rel=dcterms.rights>
     1.5    <meta content="CSS Conditional Rules Module Level 3" name=dcterms.title>
     1.6    <meta content=text name=dcterms.type>
     1.7 -  <meta content=2013-06-08 name=dcterms.date>
     1.8 +  <meta content=2013-11-09 name=dcterms.date>
     1.9    <meta content="L. David Baron" name=dcterms.creator>
    1.10    <meta content=W3C name=dcterms.publisher>
    1.11    <meta content="http://dev.w3.org/csswg/css3-conditional/"
    1.12 @@ -32,15 +32,14 @@
    1.13  
    1.14     <h1 class=p-name>CSS Conditional Rules Module Level 3</h1>
    1.15  
    1.16 -   <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft <span
    1.17 -    class=dt-updated><span class=value-title title=20130608> 8 June
    1.18 -    2013</span></span></h2>
    1.19 +   <h2 class="no-num no-toc">Editor's Draft <span class=dt-updated><span
    1.20 +    class=value-title title=20131109> 9 November 2013</span></span></h2>
    1.21  
    1.22     <dl>
    1.23      <dt>This version:
    1.24  
    1.25      <dd><a class=u-url href="http://dev.w3.org/csswg/css3-conditional/">
    1.26 -     http://www.w3.org/TR/2013/ED-css3-conditional-20130608/</a>
    1.27 +     http://www.w3.org/TR/2013/ED-css3-conditional-20131109/</a>
    1.28  
    1.29      <dt>Latest version:
    1.30  
    1.31 @@ -114,13 +113,14 @@
    1.32     class=p-summary> This module contains the features of CSS for conditional
    1.33     processing of parts of style sheets, conditioned on capabilities of the
    1.34     processor or the document the style sheet is being applied to. It includes
    1.35 -   and extends the functionality of CSS level 2 <a href="#CSS21"
    1.36 +   and extends the functionality of CSS level 2 <a href="#ref-CSS21"
    1.37     rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>, which builds on CSS level 1
    1.38 -   <a href="#CSS1" rel=biblioentry>[CSS1]<!--{{CSS1}}--></a>. The main
    1.39 +   <a href="#ref-CSS1" rel=biblioentry>[CSS1]<!--{{CSS1}}--></a>. The main
    1.40     extensions compared to level 2 are allowing nesting of certain at-rules
    1.41 -   inside ‘<code class=css>@media</code>’, and the addition of the
    1.42 -   ‘<code class=css>@supports</code>’ rule for conditional processing.
    1.43 -   </span>
    1.44 +   inside ‘<a href="#at-ruledef-media"><code
    1.45 +   class=css>@media</code></a>’, and the addition of the ‘<a
    1.46 +   href="#at-ruledef-supports"><code class=css>@supports</code></a>’ rule
    1.47 +   for conditional processing. </span>
    1.48  
    1.49    <h2 class="no-num no-toc" id=status>Status of this document</h2>
    1.50    <!--begin-status-->
    1.51 @@ -184,9 +184,10 @@
    1.52      be removed to advance the other features in this specification to
    1.53      Proposed Recommendation.
    1.54  
    1.55 -   <li>The ‘<code class=css>@supports</code>’ rule is at risk; if
    1.56 -    interoperable implementations are not found, it may be removed to advance
    1.57 -    the other features in this specification to Proposed Recommendation.
    1.58 +   <li>The ‘<a href="#at-ruledef-supports"><code
    1.59 +    class=css>@supports</code></a>’ rule is at risk; if interoperable
    1.60 +    implementations are not found, it may be removed to advance the other
    1.61 +    features in this specification to Proposed Recommendation.
    1.62    </ul>
    1.63    <!--
    1.64  
    1.65 @@ -295,17 +296,18 @@
    1.66  
    1.67    <p><em>This section is not normative.</em>
    1.68  
    1.69 -  <p><a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> defines
    1.70 -   one type of conditional group rule, the ‘<code
    1.71 -   class=css>@media</code>’ rule, and allows only style rules (not other
    1.72 -   @-rules) inside of it. The ‘<code class=css>@media</code>’ rule
    1.73 +  <p><a href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>
    1.74 +   defines one type of conditional group rule, the ‘<a
    1.75 +   href="#at-ruledef-media"><code class=css>@media</code></a>’ rule, and
    1.76 +   allows only style rules (not other @-rules) inside of it. The ‘<a
    1.77 +   href="#at-ruledef-media"><code class=css>@media</code></a>’ rule
    1.78     provides the ability to have media-specific style sheets, which is also
    1.79     provided by style sheet linking features such as ‘<code
    1.80     class=css>@import</code>’ and <code class=html>&lt;link&gt;</code>. The
    1.81 -   restrictions on the contents of ‘<code class=css>@media</code>’ rules
    1.82 -   made them less useful; they have forced authors using CSS features
    1.83 -   involving @-rules in media-specific style sheets to use separate style
    1.84 -   sheets for each medium.
    1.85 +   restrictions on the contents of ‘<a href="#at-ruledef-media"><code
    1.86 +   class=css>@media</code></a>’ rules made them less useful; they have
    1.87 +   forced authors using CSS features involving @-rules in media-specific
    1.88 +   style sheets to use separate style sheets for each medium.
    1.89  
    1.90    <p>This specification extends the rules for the contents of conditional
    1.91     group rules to allow other @-rules, which enables authors to combine CSS
    1.92 @@ -313,29 +315,33 @@
    1.93     single style sheet.
    1.94  
    1.95    <p>This specification also defines an additional type of conditional group
    1.96 -   rule, ‘<code class=css>@supports</code>’, to address author and user
    1.97 +   rule, ‘<a href="#at-ruledef-supports"><code
    1.98 +   class=css>@supports</code></a>’, to address author and user
    1.99     requirements.
   1.100  
   1.101 -  <p>The ‘<code class=css>@supports</code>’ rule allows CSS to be
   1.102 -   conditioned on implementation support for CSS properties and values. This
   1.103 -   rule makes it much easier for authors to use new CSS features and provide
   1.104 -   good fallback for implementations that do not support those features. This
   1.105 -   is particularly important for CSS features that provide new layout
   1.106 +  <p>The ‘<a href="#at-ruledef-supports"><code
   1.107 +   class=css>@supports</code></a>’ rule allows CSS to be conditioned on
   1.108 +   implementation support for CSS properties and values. This rule makes it
   1.109 +   much easier for authors to use new CSS features and provide good fallback
   1.110 +   for implementations that do not support those features. This is
   1.111 +   particularly important for CSS features that provide new layout
   1.112     mechanisms, and for other cases where a set of related styles needs to be
   1.113     conditioned on property support.
   1.114  
   1.115    <h3 id=placement><span class=secno>1.2. </span>Module Interactions</h3>
   1.116  
   1.117 -  <p>This module replaces and extends the ‘<code class=css>@media</code>’
   1.118 -   rule feature defined in <a href="#CSS21"
   1.119 +  <p>This module replaces and extends the ‘<a
   1.120 +   href="#at-ruledef-media"><code class=css>@media</code></a>’ rule feature
   1.121 +   defined in <a href="#ref-CSS21"
   1.122     rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> section <var>7.2.1</var> and
   1.123     incorporates the modifications previously made non-normatively by <a
   1.124 -   href="#MEDIAQ" rel=biblioentry>[MEDIAQ]<!--{{!MEDIAQ}}--></a> section
   1.125 +   href="#ref-MEDIAQ" rel=biblioentry>[MEDIAQ]<!--{{!MEDIAQ}}--></a> section
   1.126     <var>1</var>.
   1.127  
   1.128    <p>Its current definition depends on @-rules defined in <a
   1.129 -   href="#CSS3-FONTS" rel=biblioentry>[CSS3-FONTS]<!--{{!CSS3-FONTS}}--></a>
   1.130 -   and <a href="#CSS3-ANIMATIONS"
   1.131 +   href="#ref-CSS3-FONTS"
   1.132 +   rel=biblioentry>[CSS3-FONTS]<!--{{!CSS3-FONTS}}--></a> and <a
   1.133 +   href="#ref-CSS3-ANIMATIONS"
   1.134     rel=biblioentry>[CSS3-ANIMATIONS]<!--{{!CSS3-ANIMATIONS}}--></a>, but that
   1.135     dependency is only on the assumption that those modules will advance ahead
   1.136     of this one. If this module advances faster, then the dependency will be
   1.137 @@ -353,7 +359,7 @@
   1.138  
   1.139    <p>All of the text of this specification is normative except sections
   1.140     explicitly marked as non-normative, examples, and notes. <a
   1.141 -   href="#RFC2119" rel=biblioentry>[RFC2119]<!--{{!RFC2119}}--></a>
   1.142 +   href="#ref-RFC2119" rel=biblioentry>[RFC2119]<!--{{!RFC2119}}--></a>
   1.143  
   1.144    <p>Examples in this specification are introduced with the words “for
   1.145     example” or are set apart from the normative text with <code
   1.146 @@ -425,9 +431,9 @@
   1.147     <strong>must</strong> reflect that the rules now apply or no longer apply,
   1.148     except for properties whose definitions define effects of computed values
   1.149     that persist past the lifetime of that value (such as for some properties
   1.150 -   in <a href="#CSS3-TRANSITIONS"
   1.151 +   in <a href="#ref-CSS3-TRANSITIONS"
   1.152     rel=biblioentry>[CSS3-TRANSITIONS]<!--{{CSS3-TRANSITIONS}}--></a> and <a
   1.153 -   href="#CSS3-ANIMATIONS"
   1.154 +   href="#ref-CSS3-ANIMATIONS"
   1.155     rel=biblioentry>[CSS3-ANIMATIONS]<!--{{!CSS3-ANIMATIONS}}--></a>).
   1.156  
   1.157    <h2 id=contents-of><span class=secno>3. </span>Contents of conditional
   1.158 @@ -466,9 +472,10 @@
   1.159    ;</pre>
   1.160  
   1.161    <p> in which all the productions are defined in that grammar with the
   1.162 -   exception of <code>font_face_rule</code> defined in <a href="#CSS3-FONTS"
   1.163 +   exception of <code>font_face_rule</code> defined in <a
   1.164 +   href="#ref-CSS3-FONTS"
   1.165     rel=biblioentry>[CSS3-FONTS]<!--{{!CSS3-FONTS}}--></a>,
   1.166 -   <code>keyframes_rule</code> defined in <a href="#CSS3-ANIMATIONS"
   1.167 +   <code>keyframes_rule</code> defined in <a href="#ref-CSS3-ANIMATIONS"
   1.168     rel=biblioentry>[CSS3-ANIMATIONS]<!--{{!CSS3-ANIMATIONS}}--></a>, and <a
   1.169     href="#media"><code>media</code></a> and <a
   1.170     href="#supports_rule"><code>supports_rule</code></a> defined in this
   1.171 @@ -490,7 +497,7 @@
   1.172     href="http://www.w3.org/TR/CSS21/syndata.html#at-rules">section 4.1.5
   1.173     (At-rules)</a>, and <a
   1.174     href="http://www.w3.org/TR/CSS21/syndata.html#rule-sets">section 4.1.7
   1.175 -   (Rule sets, declaration blocks, and selectors)</a> of <a href="#CSS21"
   1.176 +   (Rule sets, declaration blocks, and selectors)</a> of <a href="#ref-CSS21"
   1.177     rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>.
   1.178  
   1.179    <h2 id=use><span class=secno>4. </span>Placement of conditional group rules</h2>
   1.180 @@ -508,17 +515,20 @@
   1.181     processors <strong>must</strong> ignore such rules.
   1.182  
   1.183    <h2 id=at-media><span class=secno>5. </span>Media-specific style sheets:
   1.184 -   the ‘<code class=css>@media</code>’ rule</h2>
   1.185 +   the ‘<a href="#at-ruledef-media"><code class=css>@media</code></a>’
   1.186 +   rule</h2>
   1.187  
   1.188 -  <p>The <dfn id=atmedia-rule>‘<code class=css>@media</code>’ rule</dfn>
   1.189 -   is a conditional group rule whose condition is a media query. It consists
   1.190 -   of the at-keyword ‘<code class=css>@media</code>’ followed by a
   1.191 -   (possibly empty) media query list (as defined in <a href="#MEDIAQ"
   1.192 +  <p>The <dfn data-dfn-type=at-rule id=at-ruledef-media>@media</dfn> rule is
   1.193 +   a conditional group rule whose condition is a media query. It consists of
   1.194 +   the at-keyword ‘<a href="#at-ruledef-media"><code
   1.195 +   class=css>@media</code></a>’ followed by a (possibly empty) media query
   1.196 +   list (as defined in <a href="#ref-MEDIAQ"
   1.197     rel=biblioentry>[MEDIAQ]<!--{{!MEDIAQ}}--></a>), followed by a group rule
   1.198     body. The condition of the rule is the result of the media query.
   1.199  
   1.200    <div class=example>
   1.201 -   <p>This ‘<code class=css>@media</code>’ rule:
   1.202 +   <p>This ‘<a href="#at-ruledef-media"><code
   1.203 +    class=css>@media</code></a>’ rule:
   1.204  
   1.205     <pre>@media screen and (min-width: 35em),
   1.206         print and (min-width: 40em) {
   1.207 @@ -537,8 +547,8 @@
   1.208    <p>In terms of the grammar, this specification extends the <a
   1.209     href="#media"><code>media</code></a> production in the <a
   1.210     href="http://www.w3.org/TR/CSS21/grammar.html">Grammar of CSS 2.1</a> (<a
   1.211 -   href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>, Appendix G)
   1.212 -   into:
   1.213 +   href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>, Appendix
   1.214 +   G) into:
   1.215  
   1.216    <pre><dfn id=media>media</dfn>
   1.217    : MEDIA_SYM S* media_query_list <a
   1.218 @@ -547,29 +557,30 @@
   1.219  
   1.220    <p>where the <a href="#group_rule_body"><code>group_rule_body</code></a>
   1.221     production is defined in this specification, the
   1.222 -   <code>media_query_list</code> production is defined in <a href="#MEDIAQ"
   1.223 -   rel=biblioentry>[MEDIAQ]<!--{{!MEDIAQ}}--></a>, and the others are defined
   1.224 -   in the <a href="http://www.w3.org/TR/CSS21/grammar.html">Grammar of CSS
   1.225 -   2.1</a> (<a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>,
   1.226 -   Appendix G).
   1.227 +   <code>media_query_list</code> production is defined in <a
   1.228 +   href="#ref-MEDIAQ" rel=biblioentry>[MEDIAQ]<!--{{!MEDIAQ}}--></a>, and the
   1.229 +   others are defined in the <a
   1.230 +   href="http://www.w3.org/TR/CSS21/grammar.html">Grammar of CSS 2.1</a> (<a
   1.231 +   href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>, Appendix
   1.232 +   G).
   1.233  
   1.234 -  <h2 id=at-supports><span class=secno>6. </span>Feature queries: the
   1.235 -   ‘<code class=css>@supports</code>’ rule</h2>
   1.236 +  <h2 id=at-supports><span class=secno>6. </span>Feature queries: the ‘<a
   1.237 +   href="#at-ruledef-supports"><code class=css>@supports</code></a>’ rule</h2>
   1.238  
   1.239 -  <p>The <dfn id=atsupports-rule>‘<code class=css>@supports</code>’
   1.240 -   rule</dfn> is a conditional group rule whose condition tests whether the
   1.241 -   user agent supports CSS property:value pairs. Authors can use it to write
   1.242 -   style sheets that use new features when available but degrade gracefully
   1.243 -   when those features are not supported. CSS has existing mechanisms for
   1.244 -   graceful degradation, such as ignoring unsupported properties or values,
   1.245 -   but these are not always sufficient when large groups of styles need to be
   1.246 -   tied to the support for certain features, as is the case for use of new
   1.247 -   layout system features.
   1.248 +  <p>The <dfn data-dfn-type=at-rule id=at-ruledef-supports>@supports</dfn>
   1.249 +   rule is a conditional group rule whose condition tests whether the user
   1.250 +   agent supports CSS property:value pairs. Authors can use it to write style
   1.251 +   sheets that use new features when available but degrade gracefully when
   1.252 +   those features are not supported. CSS has existing mechanisms for graceful
   1.253 +   degradation, such as ignoring unsupported properties or values, but these
   1.254 +   are not always sufficient when large groups of styles need to be tied to
   1.255 +   the support for certain features, as is the case for use of new layout
   1.256 +   system features.
   1.257  
   1.258 -  <p>The syntax of the condition in the ‘<code
   1.259 -   class=css>@supports</code>’ rule is slightly more complicated than for
   1.260 -   the other conditional group rules (though has some similarities to media
   1.261 -   queries) since:
   1.262 +  <p>The syntax of the condition in the ‘<a
   1.263 +   href="#at-ruledef-supports"><code class=css>@supports</code></a>’ rule
   1.264 +   is slightly more complicated than for the other conditional group rules
   1.265 +   (though has some similarities to media queries) since:
   1.266  
   1.267    <ul>
   1.268     <li>negation is needed so that the new-feature styles and the fallback
   1.269 @@ -584,14 +595,15 @@
   1.270      alternatives are vendor-prefixed properties or values
   1.271    </ul>
   1.272  
   1.273 -  <p>Therefore, the syntax of the ‘<code class=css>@supports</code>’ rule
   1.274 -   allows testing for property:value pairs, and arbitrary conjunctions (and),
   1.275 -   disjunctions (or), and negations (not) of them.
   1.276 +  <p>Therefore, the syntax of the ‘<a href="#at-ruledef-supports"><code
   1.277 +   class=css>@supports</code></a>’ rule allows testing for property:value
   1.278 +   pairs, and arbitrary conjunctions (and), disjunctions (or), and negations
   1.279 +   (not) of them.
   1.280  
   1.281    <p>This extends the lexical scanner in the <a
   1.282     href="http://www.w3.org/TR/CSS21/grammar.html">Grammar of CSS 2.1</a> (<a
   1.283 -   href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>, Appendix G) by
   1.284 -   adding:
   1.285 +   href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>, Appendix
   1.286 +   G) by adding:
   1.287  
   1.288    <pre>
   1.289  @{S}{U}{P}{P}{O}{R}{T}{S} {return <dfn
   1.290 @@ -606,7 +618,7 @@
   1.291     href="http://www.w3.org/TR/css3-mediaqueries/#syntax">AND</a></code> and
   1.292     <code><a
   1.293     href="http://www.w3.org/TR/css3-mediaqueries/#syntax">NOT</a></code>
   1.294 -   tokens defined in the Media Queries specification <a href="#MEDIAQ"
   1.295 +   tokens defined in the Media Queries specification <a href="#ref-MEDIAQ"
   1.296     rel=biblioentry>[MEDIAQ]<!--{{!MEDIAQ}}--></a> and the <a
   1.297     href="#or"><code>OR</code></a> and <a
   1.298     href="#supports_sym"><code>SUPPORTS_SYM</code></a> tokens defined above,
   1.299 @@ -620,7 +632,7 @@
   1.300     href="http://www.w3.org/TR/CSS21/syndata.html#tokenization">FUNCTION</a></code>
   1.301     token taken from the core syntax of CSS defined in <a
   1.302     href="http://www.w3.org/TR/CSS21/syndata.html#tokenization">section 4.1.1
   1.303 -   (Tokenization)</a> of <a href="#CSS21"
   1.304 +   (Tokenization)</a> of <a href="#ref-CSS21"
   1.305     rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>, by adding:
   1.306  
   1.307    <pre><dfn id="supports_rule">supports_rule</dfn>
   1.308 @@ -697,18 +709,19 @@
   1.309    ;
   1.310  </pre>
   1.311  
   1.312 -  <p> Implementations <strong>must</strong> parse ‘<code
   1.313 -   class=css>@supports</code>’ rules based on the above grammar, and when
   1.314 -   interpreting the above grammar, <strong>must</strong> match the production
   1.315 -   before an <code>|</code> operator in preference to the one after it.
   1.316 +  <p> Implementations <strong>must</strong> parse ‘<a
   1.317 +   href="#at-ruledef-supports"><code class=css>@supports</code></a>’ rules
   1.318 +   based on the above grammar, and when interpreting the above grammar,
   1.319 +   <strong>must</strong> match the production before an <code>|</code>
   1.320 +   operator in preference to the one after it.
   1.321  
   1.322    <p> The above grammar is purposely very loose for forwards-compatibility
   1.323     reasons, since the <a
   1.324     href="#general_enclosed"><code>general_enclosed</code></a> production
   1.325 -   allows for substantial future extensibility. Any ‘<code
   1.326 -   class=css>@supports</code>’ rule that does not parse according to the
   1.327 -   grammar above (that is, a rule that does not match this loose grammar
   1.328 -   which includes the <a
   1.329 +   allows for substantial future extensibility. Any ‘<a
   1.330 +   href="#at-ruledef-supports"><code class=css>@supports</code></a>’ rule
   1.331 +   that does not parse according to the grammar above (that is, a rule that
   1.332 +   does not match this loose grammar which includes the <a
   1.333     href="#general_enclosed"><code>general_enclosed</code></a> production) is
   1.334     invalid. Style sheets <strong>must not</strong> use such a rule and
   1.335     processors <strong>must</strong> ignore such a rule (including all of its
   1.336 @@ -756,16 +769,17 @@
   1.337     <dt>general_enclosed
   1.338  
   1.339     <dd> The result is always false. Additionally, style sheets <strong>must
   1.340 -    not</strong> write ‘<code class=css>@supports</code>’ rules that
   1.341 -    match this grammar production. (In other words, this production exists
   1.342 -    only for future extensibility, and is not part of the description of a
   1.343 -    valid style sheet in this level of the specification.) <span
   1.344 -    class=note>Note that future levels may define functions or other
   1.345 -    parenthesized expressions that can evaluate to true.</span>
   1.346 +    not</strong> write ‘<a href="#at-ruledef-supports"><code
   1.347 +    class=css>@supports</code></a>’ rules that match this grammar
   1.348 +    production. (In other words, this production exists only for future
   1.349 +    extensibility, and is not part of the description of a valid style sheet
   1.350 +    in this level of the specification.) <span class=note>Note that future
   1.351 +    levels may define functions or other parenthesized expressions that can
   1.352 +    evaluate to true.</span>
   1.353    </dl>
   1.354  
   1.355 -  <p>The condition of the ‘<code class=css>@supports</code>’ rule is the
   1.356 -   result of the <a
   1.357 +  <p>The condition of the ‘<a href="#at-ruledef-supports"><code
   1.358 +   class=css>@supports</code></a>’ rule is the result of the <a
   1.359     href="#supports_condition"><code>supports_condition</code></a> term that
   1.360     is a child of the <a href="#supports_rule"><code>supports_rule</code></a>
   1.361     term.
   1.362 @@ -779,16 +793,16 @@
   1.363    #article { background: white; color: black; }
   1.364  }</pre>
   1.365  
   1.366 -   <p>applies the rules inside the ‘<code class=css>@supports</code>’
   1.367 -    rule only when ‘<code class=css>display: flexbox</code>’ is
   1.368 -    supported.
   1.369 +   <p>applies the rules inside the ‘<a href="#at-ruledef-supports"><code
   1.370 +    class=css>@supports</code></a>’ rule only when ‘<code
   1.371 +    class=css>display: flexbox</code>’ is supported.
   1.372    </div>
   1.373  
   1.374    <div class=example>
   1.375 -   <p>The following example shows an additional ‘<code
   1.376 -    class=css>@supports</code>’ rule that can be used to provide an
   1.377 -    alternative for when ‘<code class=css>display: flexbox</code>’ is not
   1.378 -    supported:
   1.379 +   <p>The following example shows an additional ‘<a
   1.380 +    href="#at-ruledef-supports"><code class=css>@supports</code></a>’ rule
   1.381 +    that can be used to provide an alternative for when ‘<code
   1.382 +    class=css>display: flexbox</code>’ is not supported:
   1.383  
   1.384     <pre>@supports not ( display: flexbox ) {
   1.385    body { width: 100%; height: 100%; background: white; color: black; }
   1.386 @@ -917,7 +931,7 @@
   1.387  
   1.388    <p>For forward-compatibility, <a
   1.389     href="http://www.w3.org/TR/CSS21/syndata.html#declaration">section 4.1.8
   1.390 -   (Declarations and properties)</a> of <a href="#CSS21"
   1.391 +   (Declarations and properties)</a> of <a href="#ref-CSS21"
   1.392     rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> defines rules for handling
   1.393     invalid properties and values. CSS processors that do not implement or
   1.394     partially implement a specification <strong>must</strong> treat any part
   1.395 @@ -944,15 +958,16 @@
   1.396     does affect this definition of support.
   1.397  
   1.398    <p>These rules (and the equivalence between them) allow authors to use
   1.399 -   fallback (either in the <a href="#CSS1"
   1.400 +   fallback (either in the <a href="#ref-CSS1"
   1.401     rel=biblioentry>[CSS1]<!--{{CSS1}}--></a> sense of declarations that are
   1.402     overridden by later declarations or with the new capabilities provided by
   1.403 -   the ‘<code class=css>@supports</code>’ rule in this specification)
   1.404 -   that works correctly for the features implemented. This applies especially
   1.405 -   to compound values; implementations must implement all parts of the value
   1.406 -   in order to consider the declaration supported, either inside a style rule
   1.407 -   or in the declaration condition of an ‘<code
   1.408 -   class=css>@supports</code>’ rule.</p>
   1.409 +   the ‘<a href="#at-ruledef-supports"><code
   1.410 +   class=css>@supports</code></a>’ rule in this specification) that works
   1.411 +   correctly for the features implemented. This applies especially to
   1.412 +   compound values; implementations must implement all parts of the value in
   1.413 +   order to consider the declaration supported, either inside a style rule or
   1.414 +   in the declaration condition of an ‘<a href="#at-ruledef-supports"><code
   1.415 +   class=css>@supports</code></a>’ rule.</p>
   1.416    <!--
   1.417  <h2 id="at-document">Document queries: the '@document' rule</h2>
   1.418  
   1.419 @@ -1262,7 +1277,8 @@
   1.420     href="#cssmediarule"><code>CSSMediaRule</code></a> interface</h3>
   1.421  
   1.422    <p>The <dfn id=cssmediarule><code>CSSMediaRule</code></dfn> interface
   1.423 -   represents a ‘<code class=css>@media</code>’ rule:
   1.424 +   represents a ‘<a href="#at-ruledef-media"><code
   1.425 +   class=css>@media</code></a>’ rule:
   1.426  
   1.427    <pre class=idl>interface CSSMediaRule : CSSConditionRule {
   1.428      readonly attribute <a
   1.429 @@ -1276,7 +1292,8 @@
   1.430  
   1.431     <dd>The <a href="#media"><code>media</code></a> attribute must return a
   1.432      <code>MediaList</code> object for the list of media queries specified
   1.433 -    with the ‘<code class=css>@media</code>’ rule.
   1.434 +    with the ‘<a href="#at-ruledef-media"><code
   1.435 +    class=css>@media</code></a>’ rule.
   1.436  
   1.437     <dt><code>conditionText</code> of type <code>DOMString</code>
   1.438      (CSSMediaRule-specific definition for attribute on CSSConditionRule)
   1.439 @@ -1293,7 +1310,8 @@
   1.440     href="#csssupportsrule"><code>CSSSupportsRule</code></a> interface</h3>
   1.441  
   1.442    <p>The <dfn id=csssupportsrule><code>CSSSupportsRule</code></dfn> interface
   1.443 -   represents a ‘<code class=css>@supports</code>’ rule.
   1.444 +   represents a ‘<a href="#at-ruledef-supports"><code
   1.445 +   class=css>@supports</code></a>’ rule.
   1.446  
   1.447    <pre class=idl>interface CSSSupportsRule : CSSConditionRule {
   1.448  }</pre>
   1.449 @@ -1367,11 +1385,11 @@
   1.450    <p>In order to allow these new @-rules in CSS style sheets, this
   1.451     specification modifies the <code>stylesheet</code> production in the <a
   1.452     href="http://www.w3.org/TR/CSS21/grammar.html">Appendix G</a> grammar of
   1.453 -   <a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> by replacing
   1.454 -   the <a href="#media"><code>media</code></a> production defined in <a
   1.455 -   href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> with the <a
   1.456 -   href="#media"><code>media</code></a> production defined in this one, and
   1.457 -   additionally inserting <code>| supports_rule</code> alongside
   1.458 +   <a href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> by
   1.459 +   replacing the <a href="#media"><code>media</code></a> production defined
   1.460 +   in <a href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> with
   1.461 +   the <a href="#media"><code>media</code></a> production defined in this
   1.462 +   one, and additionally inserting <code>| supports_rule</code> alongside
   1.463     <code>ruleset | media | page</code>.
   1.464  
   1.465    <h2 id=conformance><span class=secno>8. </span>Conformance</h2>
   1.466 @@ -1383,7 +1401,7 @@
   1.467     this module are:
   1.468  
   1.469    <ul>
   1.470 -   <li><a href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>
   1.471 +   <li><a href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>
   1.472    </ul>
   1.473  
   1.474    <p>All of the conformance requirements of all base modules are incorporated
   1.475 @@ -1396,12 +1414,12 @@
   1.476  
   1.477    <div class=example>
   1.478     <p>For example, this means that grammar presented in modules other than <a
   1.479 -    href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> must obey the
   1.480 -    requirements that <a href="#CSS21"
   1.481 +    href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> must obey
   1.482 +    the requirements that <a href="#ref-CSS21"
   1.483      rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> defines for the parsing of
   1.484      properties, and that requirements for handling invalid syntax in <a
   1.485 -    href="#CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> do not treat
   1.486 -    syntax added by other modules as invalid.
   1.487 +    href="#ref-CSS21" rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> do not
   1.488 +    treat syntax added by other modules as invalid.
   1.489    </div>
   1.490  
   1.491    <p>Additionally, the set of valid syntax can be increased by the
   1.492 @@ -1577,7 +1595,7 @@
   1.493     <dd style="display: none"><!-- keeps the doc valid if the DL is empty -->
   1.494      <!---->
   1.495  
   1.496 -   <dt id=CSS21>[CSS21]
   1.497 +   <dt id=ref-CSS21>[CSS21]
   1.498  
   1.499     <dd>Bert Bos; et al. <a
   1.500      href="http://www.w3.org/TR/2011/REC-CSS2-20110607"><cite>Cascading Style
   1.501 @@ -1587,7 +1605,7 @@
   1.502     </dd>
   1.503     <!---->
   1.504  
   1.505 -   <dt id=CSS3-ANIMATIONS>[CSS3-ANIMATIONS]
   1.506 +   <dt id=ref-CSS3-ANIMATIONS>[CSS3-ANIMATIONS]
   1.507  
   1.508     <dd>Dean Jackson; et al. <a
   1.509      href="http://www.w3.org/TR/2013/WD-css3-animations-20130219/"><cite>CSS
   1.510 @@ -1597,17 +1615,17 @@
   1.511     </dd>
   1.512     <!---->
   1.513  
   1.514 -   <dt id=CSS3-FONTS>[CSS3-FONTS]
   1.515 +   <dt id=ref-CSS3-FONTS>[CSS3-FONTS]
   1.516  
   1.517     <dd>John Daggett. <a
   1.518 -    href="http://www.w3.org/TR/2013/WD-css3-fonts-20130212/"><cite>CSS Fonts
   1.519 -    Module Level 3.</cite></a> 12 February 2013. W3C Working Draft. (Work in
   1.520 -    progress.) URL: <a
   1.521 -    href="http://www.w3.org/TR/2013/WD-css3-fonts-20130212/">http://www.w3.org/TR/2013/WD-css3-fonts-20130212/</a>
   1.522 +    href="http://www.w3.org/TR/2013/CR-css-fonts-3-20131003/"><cite>CSS Fonts
   1.523 +    Module Level 3.</cite></a> 3 October 2013. W3C Candidate Recommendation.
   1.524 +    (Work in progress.) URL: <a
   1.525 +    href="http://www.w3.org/TR/2013/CR-css-fonts-3-20131003/">http://www.w3.org/TR/2013/CR-css-fonts-3-20131003/</a>
   1.526     </dd>
   1.527     <!---->
   1.528  
   1.529 -   <dt id=MEDIAQ>[MEDIAQ]
   1.530 +   <dt id=ref-MEDIAQ>[MEDIAQ]
   1.531  
   1.532     <dd>Florian Rivoal. <a
   1.533      href="http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/"><cite>Media
   1.534 @@ -1616,7 +1634,7 @@
   1.535     </dd>
   1.536     <!---->
   1.537  
   1.538 -   <dt id=RFC2119>[RFC2119]
   1.539 +   <dt id=ref-RFC2119>[RFC2119]
   1.540  
   1.541     <dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key
   1.542      words for use in RFCs to Indicate Requirement Levels.</cite></a> Internet
   1.543 @@ -1635,7 +1653,7 @@
   1.544     <dd style="display: none"><!-- keeps the doc valid if the DL is empty -->
   1.545      <!---->
   1.546  
   1.547 -   <dt id=CSS1>[CSS1]
   1.548 +   <dt id=ref-CSS1>[CSS1]
   1.549  
   1.550     <dd>Håkon Wium Lie; Bert Bos. <a
   1.551      href="http://www.w3.org/TR/2008/REC-CSS1-20080411"><cite>Cascading Style
   1.552 @@ -1645,7 +1663,7 @@
   1.553     </dd>
   1.554     <!---->
   1.555  
   1.556 -   <dt id=CSS3-TRANSITIONS>[CSS3-TRANSITIONS]
   1.557 +   <dt id=ref-CSS3-TRANSITIONS>[CSS3-TRANSITIONS]
   1.558  
   1.559     <dd>Dean Jackson; et al. <a
   1.560      href="http://www.w3.org/TR/2013/WD-css3-transitions-20130212/"><cite>CSS
   1.561 @@ -1702,7 +1720,7 @@
   1.562  
   1.563     <li>media, <a href="#media" title="section 5."><strong>5.</strong></a>
   1.564  
   1.565 -   <li>‘<code class=css>@media</code>’ rule, <a href="#atmedia-rule"
   1.566 +   <li>@media, <a href="#at-ruledef-media"
   1.567      title="section 5."><strong>5.</strong></a>
   1.568  
   1.569     <li>nested_statement, <a href="#nested_statement"
   1.570 @@ -1713,6 +1731,9 @@
   1.571     <li>support, <a href="#dfn-support"
   1.572      title="section 6.1."><strong>6.1.</strong></a>
   1.573  
   1.574 +   <li>@supports, <a href="#at-ruledef-supports"
   1.575 +    title="section 6."><strong>6.</strong></a>
   1.576 +
   1.577     <li>supports_condition, <a href="#supports_condition"
   1.578      title="section 6."><strong>6.</strong></a>
   1.579  
   1.580 @@ -1732,9 +1753,6 @@
   1.581     <li>supports_negation, <a href="#supports_negation"
   1.582      title="section 6."><strong>6.</strong></a>
   1.583  
   1.584 -   <li>‘<code class=css>@supports</code>’ rule, <a
   1.585 -    href="#atsupports-rule" title="section 6."><strong>6.</strong></a>
   1.586 -
   1.587     <li>supports_rule, <a href="#supports_rule"
   1.588      title="section 6."><strong>6.</strong></a>
   1.589  
     2.1 --- a/css-conditional/Overview.src.html	Sat Nov 09 17:41:21 2013 +0100
     2.2 +++ b/css-conditional/Overview.src.html	Sat Nov 09 14:32:58 2013 -0800
     2.3 @@ -318,7 +318,7 @@
     2.4  
     2.5  <h2 id="at-media">Media-specific style sheets:  the '@media' rule</h2>
     2.6  
     2.7 -<p>The <dfn id="atmedia-rule">'@media' rule</dfn> is a conditional group rule whose
     2.8 +<p>The <dfn data-dfn-type='at-rule' id="at-ruledef-media">@media</dfn> rule is a conditional group rule whose
     2.9  condition is a media query.  It consists of the at-keyword
    2.10  '@media' followed by a (possibly empty) media query list (as
    2.11  defined in [[!MEDIAQ]]), followed by a group rule body.  The condition
    2.12 @@ -358,7 +358,7 @@
    2.13  
    2.14  <h2 id="at-supports">Feature queries: the '@supports' rule</h2>
    2.15  
    2.16 -<p>The <dfn id="atsupports-rule">'@supports' rule</dfn> is a conditional group
    2.17 +<p>The <dfn data-dfn-type="at-rule" id="at-ruledef-supports">@supports</dfn> rule is a conditional group
    2.18  rule whose condition tests whether the user agent supports CSS
    2.19  property:value pairs.  Authors can use it to write style sheets that use
    2.20  new features when available but degrade gracefully when those features

mercurial