@@ -149,11 +149,10 @@ <h2 id=status>Status of this document</h2>
149149this: “[CSS21] <em>…summary of
150150comment…</em>”</p>
151151
152- <p>A list of changes since
153- the <a href="/TR/2006/WD-CSS21-20061106">last Working Draft</a> is
154- available in the
155- <a href="/Style/css2-updates/issues-4-20061106.html">Disposition of
156- Comments</a>.</p>
152+ <p>This document incorporates <a
153+ href="/Style/css2-updates/CR-CSS21-20070719-errata.html">
154+ corrections</a> made as a result of implementation experience since
155+ July 2007 (the previous publication).
157156
158157<p>This document was produced by the <a
159158href="/Style/CSS/members">CSS Working Group</a> (part
@@ -2764,7 +2763,8 @@ <h3>4.1.3 <a name="characters">Characters and case</a></h3>
27642763 to contain either the backslash or the newline).
27652764 </p>
27662765 <p>Second, it cancels the meaning of special CSS characters.
2767- Any character (except a hexadecimal digit) can be escaped
2766+ Except within CSS comments, any character (except a
2767+ hexadecimal digit) can be escaped
27682768 with a backslash to remove its special meaning.
27692769 For example, <samp>"\""</samp> is a string consisting of one
27702770 double quote. Style sheet preprocessors must not remove
@@ -6015,7 +6015,12 @@ <H3>7.2.1 <a name="at-media-rule">The @media rule</a></H3>
60156015
60166016<P>An <a name="x2"><span class="index-def" title="media">@media</span></a> rule
60176017specifies the target <a href="#media-types">media types</a> (separated
6018- by commas) of a set of rules (delimited by curly braces). The <a name="x3"><span
6018+ by commas) of a set of <a
6019+ href="syndata.html#tokenization">statements</a> (delimited by curly
6020+ braces). Invalid statements must be ignored per <a
6021+ href="syndata.html#rule-sets">4.1.7 "Rule sets, declaration blocks,
6022+ and selectors"</a> and <a href="syndata.html#parsing-errors">4.2
6023+ "Rules for handling parsing errors."</a> The <a name="x3"><span
60196024class="index-inst" title="@media">@media</span></a> construct allows style
60206025sheet rules for various media in the same style sheet:</P>
60216026
@@ -6032,7 +6037,8 @@ <H3>7.2.1 <a name="at-media-rule">The @media rule</a></H3>
60326037</pre>
60336038
60346039<p>Style rules outside of @media rules apply to all media types
6035- that the style sheet applies to.</p>
6040+ that the style sheet applies to. At-rules inside @media are invalid in
6041+ CSS2.1.
60366042
60376043<H2>7.3 <a name="media-types">Recognized media types</a></H2>
60386044
@@ -6575,8 +6581,9 @@ <H3>8.3.1 <a name="collapsing-margins">Collapsing margins</a></H3>
65756581href="visuren.html#floats">floated</a> box and any other box do not
65766582collapse (not even between a float and its in-flow children).
65776583
6578- <li>Vertical margins of elements with <a href="visufx.html#propdef-overflow" class="noxref"><span
6579- class="propinst-overflow">'overflow'</span></a> other than 'visible' do
6584+ <li>Vertical margins of elements that establish new block formatting
6585+ contexts (such as floats and elements with <a href="visufx.html#propdef-overflow" class="noxref"><span
6586+ class="propinst-overflow">'overflow'</span></a> other than 'visible') do
65806587not collapse with their in-flow children.
65816588
65826589<li>Margins of <a
@@ -7497,7 +7504,7 @@ <h3>9.2.2 <a name="inline-boxes">Inline-level elements and inline boxes</a></h3>
74977504within a paragraph, inline images,
74987505etc.). Several values of the <a href="visuren.html#propdef-display" class="noxref"><span
74997506class="propinst-display">'display'</span></a> property make an element
7500- inline: 'inline', 'inline-table',
7507+ inline: 'inline', 'inline-table', 'inline-block'
75017508 and 'run-in' (part of the time; see <a href="#run-in">run-in boxes</a>).
75027509Inline-level elements generate <a name="inline-box"><dfn>inline
75037510boxes</dfn></a>.
@@ -8460,7 +8467,7 @@ <h2>9.5 <a name="floats">Floats</a></h2>
84608467The contents of floats are stacked as if floats generated new
84618468stacking contexts, except that any positioned elements and elements
84628469that actually create new
8463- stacking contexts take part in the float's parent's stacking context.
8470+ stacking contexts take part in the float's parent stacking context.
84648471A float can overlap other boxes in the normal flow (e.g., when a
84658472normal flow box next to a float has negative margins). When this
84668473happens, floats are rendered in front of non-positioned in-flow
@@ -9306,9 +9313,9 @@ <h3>9.9.1 <a name="z-index">Specifying the stack level</a>: the <a href="visuren
93069313<li>the stacking contexts of descendants with negative stack
93079314 levels.</li>
93089315<li>a stacking level containing in-flow non-inline-level
9309- descendants.</li>
9310- <li>a stacking level for floats and their contents.</li>
9311- <li>a stacking level for in-flow inline-level descendants.</li>
9316+ non-positioned descendants.</li>
9317+ <li>a stacking level for non-positioned floats and their contents.</li>
9318+ <li>a stacking level for in-flow inline-level non-positioned descendants.</li>
93129319<li>a stacking level for positioned descendants with 'z-index:
93139320 auto', and any descendant stacking contexts with 'z-index: 0'.</li>
93149321<li>the stacking contexts of descendants with positive stack levels.</li>
@@ -10562,6 +10569,14 @@ <h2>10.5 <a name="the-height-property">Content height</a>: the <a href="visudet.
1056210569positioned, the value computes to 'auto'. A percentage height
1056310570on the <a href="conform.html#root">root element</a> is relative to the
1056410571<a href="#containing-block-details">initial containing block</a>.
10572+ <span class="note">
10573+ Note: For absolutely positioned elements whose containing block is
10574+ based on a block-level element, the percentage is calculated with
10575+ respect to the height of the <em>padding box</em> of that element.
10576+ This is a change from CSS1, where the percentage was always
10577+ calculated with respect to the <em>content box</em> of the parent
10578+ element.
10579+ </span>
1056510580</dd>
1056610581<dt><strong>auto</strong>
1056710582</dt>
@@ -12769,7 +12784,18 @@ <h3>12.5.1 <a name="list-style">Lists:</a> the <a href="generate.html#propdef-li
1276912784<dt><strong>outside</strong>
1277012785
1277112786<dd>The marker box is outside the principal block box. CSS 2.1
12772- does not specify the precise location of the marker box.
12787+ does not specify the precise location of the marker box, but does
12788+ require that for list items whose 'direction' property is 'ltr' the
12789+ marker box be on the left side of the content and for elements whose
12790+ 'direction' property is 'rtl' the marker box be on the right side of
12791+ the content. 'overflow' on the element does not clip the marker box.
12792+ The marker box is fixed with respect to the principal block box's
12793+ border and does not scroll with the principal block box's content.
12794+ The size or contents of the marker box may affect the height of the
12795+ principal block box and/or the height of its first line box, and in
12796+ some cases may cause the creation of a new line box. <span
12797+ class=note><strong>Note:</strong> This interaction may be more
12798+ precisely defined in a future level of CSS.</span>
1277312799
1277412800<dt><strong>inside</strong>
1277512801
@@ -12812,10 +12838,10 @@ <h3>12.5.1 <a name="list-style">Lists:</a> the <a href="generate.html#propdef-li
1281212838and outside list style position"><SPAN class="dlink"> <A name="img-list-inout" href="images/longdesc/list-inout-desc.html" title="Long description for example showing inside vs. outside
1281312839list marker">[D]</A></SPAN></p>
1281412840</div>
12815- </div>
1281612841
1281712842<P>In right-to-left text, the markers would have been on the right
1281812843side of the box.
12844+ </div>
1281912845
1282012846<div class="propdef">
1282112847<dl><dt>
@@ -13219,7 +13245,7 @@ <h3>13.3.1 <a name="page-break-props">Page break properties</a>: <a href="page.h
1321913245<table class="propinfo" cellspacing=0 cellpadding=0>
1322013246<tr valign=baseline><td><em>Value:</em> <td>auto | always | avoid | left | right | <a href="cascade.html#value-def-inherit" class="noxref"><span class="value-inst-inherit">inherit</span></a>
1322113247<tr valign=baseline><td><em>Initial:</em> <td>auto
13222- <tr valign=baseline><td><em>Applies to:</em> <td>block-level elements
13248+ <tr valign=baseline><td><em>Applies to:</em> <td>block-level elements (but see text)
1322313249<tr valign=baseline><td><em>Inherited:</em> <td>no
1322413250<tr valign=baseline><td><em>Percentages:</em> <td>N/A
1322513251<tr valign=baseline><td><em>Media:</em> <td><a href="media.html#visual-media-group" class="noxref">visual</a>, <a href="media.html#paged-media-group" class="noxref">paged</a>
@@ -13236,7 +13262,7 @@ <h3>13.3.1 <a name="page-break-props">Page break properties</a>: <a href="page.h
1323613262<table class="propinfo" cellspacing=0 cellpadding=0>
1323713263<tr valign=baseline><td><em>Value:</em> <td>auto | always | avoid | left | right | <a href="cascade.html#value-def-inherit" class="noxref"><span class="value-inst-inherit">inherit</span></a>
1323813264<tr valign=baseline><td><em>Initial:</em> <td>auto
13239- <tr valign=baseline><td><em>Applies to:</em> <td>block-level elements
13265+ <tr valign=baseline><td><em>Applies to:</em> <td>block-level elements (but see text)
1324013266<tr valign=baseline><td><em>Inherited:</em> <td>no
1324113267<tr valign=baseline><td><em>Percentages:</em> <td>N/A
1324213268<tr valign=baseline><td><em>Media:</em> <td><a href="media.html#visual-media-group" class="noxref">visual</a>, <a href="media.html#paged-media-group" class="noxref">paged</a>
@@ -23381,15 +23407,15 @@ <H1><a name="q0">Appendix F. Full property table</a></H1>
2338123407<tr><td><a href="page.html#propdef-page-break-after"><span class="propinst-page-break-after xref">'page-break-after'</span></a>
2338223408<td>auto | always | avoid | left | right | <a href="cascade.html#value-def-inherit" class="noxref"><span class="value-inst-inherit">inherit</span></a>
2338323409<td>auto
23384- <td>block-level elements
23410+ <td>block-level elements (but see text)
2338523411<td>no
2338623412<td>
2338723413<td><a href="media.html#visual-media-group">visual</a>, <a href="media.html#paged-media-group">paged</a>
2338823414
2338923415<tr><td><a href="page.html#propdef-page-break-before"><span class="propinst-page-break-before xref">'page-break-before'</span></a>
2339023416<td>auto | always | avoid | left | right | <a href="cascade.html#value-def-inherit" class="noxref"><span class="value-inst-inherit">inherit</span></a>
2339123417<td>auto
23392- <td>block-level elements
23418+ <td>block-level elements (but see text)
2339323419<td>no
2339423420<td>
2339523421<td><a href="media.html#visual-media-group">visual</a>, <a href="media.html#paged-media-group">paged</a>
@@ -23847,7 +23873,7 @@ <h2>G.2 <a name="scanner">Lexical scanner</a></h2>
2384723873K k|\\0{0,4}(4b|6b)(\r\n|[ \t\r\n\f])?|\\k
2384823874M m|\\0{0,4}(4d|6d)(\r\n|[ \t\r\n\f])?|\\m
2384923875N n|\\0{0,4}(4e|6e)(\r\n|[ \t\r\n\f])?|\\n
23850- O o|\\0{0,4}(51|71 )(\r\n|[ \t\r\n\f])?|\\o
23876+ O o|\\0{0,4}(4f|6f )(\r\n|[ \t\r\n\f])?|\\o
2385123877P p|\\0{0,4}(50|70)(\r\n|[ \t\r\n\f])?|\\p
2385223878R r|\\0{0,4}(52|72)(\r\n|[ \t\r\n\f])?|\\r
2385323879S s|\\0{0,4}(53|73)(\r\n|[ \t\r\n\f])?|\\s
0 commit comments