8000 Define error handling for contents, and define placement (what group … · w3c/csswg-drafts@592179f · GitHub
Skip to content

Commit 592179f

Browse files
committed
Define error handling for contents, and define placement (what group rules can be within).
1 parent f6bcb47 commit 592179f

2 files changed

Lines changed: 81 additions & 51 deletions

File tree

css3-conditional/Overview.html

Lines changed: 60 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -169,32 +169,31 @@ <h2 class="no-num no-toc" id=contents>Table of contents</h2>
169169

170170
<li><a href="#contents"><span class=secno>3. </span>Contents of
171171
conditional group rules</a>
172-
<ul class=toc>
173-
<li><a href="#group-error"><span class=secno>3.1. </span>Error
174-
handling</a>
175-
</ul>
176172

177-
<li><a href="#at-media"><span class=secno>4. </span>Media-specific style
173+
<li><a href="#use"><span class=secno>4. </span>Use of conditional group
174+
rules</a>
175+
176+
<li><a href="#at-media"><span class=secno>5. </span>Media-specific style
178177
sheets: the &lsquo;<code class=css>@media</code>&rsquo; rule</a>
179178

180-
<li><a href="#at-supports"><span class=secno>5. </span>Feature queries:
179+
<li><a href="#at-supports"><span class=secno>6. </span>Feature queries:
181180
the &lsquo;<code class=css>@supports</code>&rsquo; rule</a>
182181

183-
<li><a href="#at-document"><span class=secno>6. </span>Document queries:
182+
<li><a href="#at-document"><span class=secno>7. </span>Document queries:
184183
the &lsquo;<code class=css>@document</code>&rsquo; rule</a>
185184

186-
<li><a href="#conformance"><span class=secno>7. </span>Conformance</a>
185+
<li><a href="#conformance"><span class=secno>8. </span>Conformance</a>
187186
<ul class=toc>
188-
<li><a href="#conformance-classes"><span class=secno>7.1.
187+
<li><a href="#conformance-classes"><span class=secno>8.1.
189188
</span>Conformance Classes</a>
190189

191-
<li><a href="#partial"><span class=secno>7.2. </span> Partial
190+
<li><a href="#partial"><span class=secno>8.2. </span> Partial
192191
Implementations</a>
193192

194-
<li><a href="#experimental"><span class=secno>7.3. </span>Experimental
193+
<li><a href="#experimental"><span class=secno>8.3. </span>Experimental
195194
Implementations</a>
196195

197-
<li><a href="#cr-exit-criteria"><span class=secno>7.4. </span>CR Exit
196+
<li><a href="#cr-exit-criteria"><span class=secno>8.4. </span>CR Exit
198197
Criteria</a>
199198
</ul>
200199

@@ -418,14 +417,30 @@ <h2 id=contents><span class=secno>3. </span>Contents of conditional group
418417
<p>Style sheets <strong>must not</strong> use rules other than the allowed
419418
ones inside conditional group rules.
420419

421-
<h3 id=group-error><span class=secno>3.1. </span>Error handling</h3>
422-
423-
<p>Implementations <strong>must</strong> ignore rules that are not allowed
424-
within a group rule.
425-
426-
<p class=issue>Define error handling rules for unknown things.
427-
428-
<h2 id=at-media><span class=secno>4. </span>Media-specific style sheets:
420+
<p>CSS processors <strong>must</strong> ignore rules that are not allowed
421+
within a group rule, and <strong>must</strong> handle invalid rules inside
422+
of group rules as described in <a
423+
href="http://www.w3.org/TR/CSS21/syndata.html#parsing-errors">section 4.2
424+
(Rules for handling parsing errors)</a>, <a
425+
href="http://www.w3.org/TR/CSS21/syndata.html#at-rules">section 4.1.5
426+
(At-rules)</a>, and <a
427+
href="http://www.w3.org/TR/CSS21/syndata.html#rule-sets">section 4.1.7
428+
(Rule sets, declaration blocks, and selectors)</a> of <a href="#CSS21"
429+
rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a>.
430+
431+
<h2 id=use><span class=secno>4. </span>Use of conditional group rules</h2>
432+
433+
<p>Conditional group rules are allowed at the top-level of a style sheet,
434+
and inside other conditional group rules. CSS processors
435+
<strong>must</strong> process such rules as <a
436+
href="#processing">described above</a>.
437+
438+
<p>Any rules that are not allowed after a ruleset are also not allowed
439+
after a conditional group rule. Therefore, style sheets <strong>must
440+
not</strong> place such rules after a conditional group rules, and CSS
441+
processors <strong>must</strong> ignore such rules.
442+
443+
<h2 id=at-media><span class=secno>5. </span>Media-specific style sheets:
429444
the &lsquo;<code class=css>@media</code>&rsquo; rule</h2>
430445

431446
<p>The <dfn id=media-rule>&lsquo;<code class=css>@media</code>&rsquo;
@@ -470,7 +485,7 @@ <h2 id=at-media><span class=secno>4. </span>Media-specific style sheets:
470485
<p class=issue>This changes the <code>S*</code> in CSS 2.1 into
471486
<code>S+</code>. Is that correct?
472487

473-
<h2 id=at-supports><span class=secno>5. </span>Feature queries: the
488+
<h2 id=at-supports><span class=secno>6. </span>Feature queries: the
474489
&lsquo;<code class=css>@supports</code>&rsquo; rule</h2>
475490

476491
<p>The <dfn id=supports-rule>&lsquo;<code class=css>@supports</code>&rsquo;
@@ -673,7 +688,7 @@ <h2 id=at-supports><span class=secno>5. </span>Feature queries: the
673688
}</pre>
674689
</div>
675690

676-
<h2 id=at-document><span class=secno>6. </span>Document queries: the
691+
<h2 id=at-document><span class=secno>7. </span>Document queries: the
677692
&lsquo;<code class=css>@document</code>&rsquo; rule</h2>
678693

679694
<p>The <dfn id=document-rule>&lsquo;<code class=css>@document</code>&rsquo;
@@ -852,9 +867,9 @@ <h2 id=at-document><span class=secno>6. </span>Document queries: the
852867
: URI | FUNCTION
853868
;</pre>
854869

855-
<h2 id=conformance><span class=secno>7. </span>Conformance</h2>
870+
<h2 id=conformance><span class=secno>8. </span>Conformance</h2>
856871

857-
<h3 id=conformance-classes><span class=secno>7.1. </span>Conformance
872+
<h3 id=conformance-classes><span class=secno>8.1. </span>Conformance
858873
Classes</h3>
859874

860875
<p>Conformance to the CSS Conditional Rules Module is defined for three
@@ -900,7 +915,7 @@ <h3 id=conformance-classes><span class=secno>7.1. </span>Conformance
900915
the generic CSS grammar and the individual grammars of each property in
901916
this module.
902917

903-
<h3 id=partial><span class=secno>7.2. </span> Partial Implementations</h3>
918+
<h3 id=partial><span class=secno>8.2. </span> Partial Implementations</h3>
904919

905920
<p>So that authors can exploit the forward-compatible parsing rules to
906921
assign fallback values, CSS renderers <strong>must</strong> treat as
@@ -914,7 +929,7 @@ <h3 id=partial><span class=secno>7.2. </span> Partial Implementations</h3>
914929
unsupported values must be), CSS requires that the entire declaration be
915930
ignored.
916931

917-
<h3 id=experimental><span class=secno>7.3. </span>Experimental
932+
<h3 id=experimental><span class=secno>8.3. </span>Experimental
918933
Implementations</h3>
919934

920935
<p>To avoid clashes with future CSS features, the CSS specifications
@@ -928,7 +943,7 @@ <h3 id=experimental><span class=secno>7.3. </span>Experimental
928943
should implement the non-prefixed syntax for any feature they consider to
929944
be correctly implemented according to spec.
930945

931-
<h3 id=cr-exit-criteria><span class=secno>7.4. </span>CR Exit Criteria</h3>
946+
<h3 id=cr-exit-criteria><span class=secno>8.4. </span>CR Exit Criteria</h3>
932947

933948
<p id=cr-exit-criteria> For this specification to be advanced to Proposed
934949
Recommendation, there must be at least two independent, interoperable
@@ -1126,62 +1141,62 @@ <h2 class=no-num id=index>Index</h2>
11261141
<li>conformance
11271142
<ul>
11281143
<li>authoring tool, <a href="#conform-authoring-tool"
1129-
title="conformance, authoring tool"><strong>7.1.</strong></a>
1144+
title="conformance, authoring tool"><strong>8.1.</strong></a>
11301145

11311146
<li>renderer, <a href="#conform-renderer" title="conformance,
1132-
renderer"><strong>7.1.</strong></a>
1147+
renderer"><strong>8.1.</strong></a>
11331148

11341149
<li>style sheet, <a href="#conform-style-sheet" title="conformance,
1135-
style sheet"><strong>7.1.</strong></a>
1150+
style sheet"><strong>8.1.</strong></a>
11361151
</ul>
11371152

11381153
<li>&lsquo;<code class=css>@document</code>&rsquo; rule, <a
1139-
href="#document-rule" title="'@document' rule"><strong>6.</strong></a>
1154+
href="#document-rule" title="'@document' rule"><strong>7.</strong></a>
11401155

11411156
< 5E30 li>domain(), <a href="#url-domain"
1142-
title="domain()"><strong>6.</strong></a>
1157+
title="domain()"><strong>7.</strong></a>
11431158

11441159
<li>domain matching function, <a href="#domain-matching-function"
1145-
title="domain matching function"><strong>6.</strong></a>
1160+
title="domain matching function"><strong>7.</strong></a>
11461161

11471162
<li>exact url matching function, <a href="#exact-url-matching-function"
1148-
title="exact url matching function"><strong>6.</strong></a>
1163+
title="exact url matching function"><strong>7.</strong></a>
11491164

11501165
<li>group rule body, <a href="#group-rule-body" title="group rule
11511166
body"><strong>3.</strong></a>
11521167

11531168
<li>&lsquo;<code class=css>@media</code>&rsquo; rule, << AD90 /span>a
1154-
href="#media-rule" title="'@media' rule"><strong>4.</strong></a>
1169+
href="#media-rule" title="'@media' rule"><strong>5.</strong></a>
11551170

11561171
<li>regexp(), <a href="#url-regexp"
1157-
title="regexp()"><strong>6.</strong></a>
1172+
title="regexp()"><strong>7.</strong></a>
11581173

11591174
<li>&lsquo;<code class=css>@supports</code>&rsquo; rule, <a
1160-
href="#supports-rule" title="'@supports' rule"><strong>5.</strong></a>
1175+
href="#supports-rule" title="'@supports' rule"><strong>6.</strong></a>
11611176

1162-
<li>url(), <a href="#url-exact" title="url()"><strong>6.</strong></a>
1177+
<li>url(), <a href="#url-exact" title="url()"><strong>7.</strong></a>
11631178

11641179
<li>URL matching functions, <a href="#url-matching-functions" title="URL
1165-
matching functions"><strong>6.</strong></a>
1180+
matching functions"><strong>7.</strong></a>
11661181
<ul>
11671182
<li>domain, <a href="#url-domain" title="URL matching functions,
1168-
domain"><strong>6.</strong></a>
1183+
domain"><strong>7.</strong></a>
11691184

11701185
<li>exact, <a href="#url-exact" title="URL matching functions,
1171-
exact"><strong>6.</strong></a>
1186+
exact"><strong>7.</strong></a>
11721187

11731188
<li>prefix, <a href="#url-prefix" title="URL matching functions,
1174-
prefix"><strong>6.</strong></a>
1189+
prefix"><strong>7.</strong></a>
11751190

11761191
<li>regular expression, <a href="#url-regexp" title="URL matching
1177-
functions, regular expression"><strong>6.</strong></a>
1192+
functions, regular expression"><strong>7.</strong></a>
11781193
</ul>
11791194

11801195
<li>url-prefix(), <a href="#url-prefix"
1181-
title="url-prefix()"><strong>6.</strong></a>
1196+
title="url-prefix()"><strong>7.</strong></a>
11821197

11831198
<li>url prefix matching function, <a href="#url-prefix-matching-function"
1184-
title="url prefix matching function"><strong>6.</strong></a>
1199+
title="url prefix matching function"><strong>7.</strong></a>
11851200
</ul>
11861201
<!--end-index-->
11871202
</html>

css3-conditional/Overview.src.html

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -266,12 +266,27 @@ <h2 id="contents">Contents of conditional group rules</h2>
266266
<p>Style sheets <strong>must not</strong> use rules other than the allowed ones inside
267267
conditional group rules.</p>
268268

269-
<h3 id="group-error">Error handling</h3>
270-
271-
<p>Implementations <strong>must</strong> ignore rules that are not
272-
allowed within a group rule.</p>
273-
274-
<p class="issue">Define error handling rules for unknown things.</p>
269+
<p>CSS processors <strong>must</strong> ignore rules that are not
270+
allowed within a group rule, and <strong>must</strong> handle invalid
271+
rules inside of group rules as described in <a
272+
href="http://www.w3.org/TR/CSS21/syndata.html#parsing-errors">section
273+
4.2 (Rules for handling parsing errors)</a>, <a
274+
href="http://www.w3.org/TR/CSS21/syndata.html#at-rules">section 4.1.5
275+
(At-rules)</a>, and <a
276+
href="http://www.w3.org/TR/CSS21/syndata.html#rule-sets">section 4.1.7
277+
(Rule sets, declaration blocks, and selectors)</a> of [[!CSS21]].</p>
278+
279+
<h2 id="use">Use of conditional group rules</h2>
280+
281+
<p>Conditional group rules are allowed at the top-level of a style
282+
sheet, and inside other conditional group rules. CSS processors
283+
<strong>must</strong> process such rules as <a
284+
href="#processing">described above</a>.</p>
285+
286+
<p>Any rules that are not allowed after a ruleset are also not allowed
287+
after a conditional group rule. Therefore, style sheets <strong>must
288+
not</strong> place such rules after a conditional group rules, and CSS
289+
processors <strong>must</strong> ignore such rules.</p>
275290

276291
<h2 id="at-media">Media-specific style sheets: the '@media' rule</h2>
277292

0 commit comments

Comments
 (0)