@@ -8507,17 +8507,16 @@ <h3>9.4.2 <a name="inline-formatting">Inline formatting contexts</a></h3>
85078507same line box</em> due to <a href="#direction">bidirectional text
85088508processing</a>.
85098509</p>
8510- <p id="phantom-line-box">If an element contains no text, no <a
8510+ <p id="phantom-line-box">Line boxes are created as needed to hold
8511+ inline-level content within an inline formatting context. Line boxes
8512+ that contain no text, no <a
85118513href="text.html#white-space-prop">preserved white space,</a> no inline
85128514elements with non-zero margins, padding, or borders, and no other <a
85138515href="#positioning-scheme">in-flow</a> content (such as images, inline
8514- block, or inline tables), then no line boxes are generated inside the
8515- element. The <a href="visudet.html#static-position">static
8516- position</a> of any child elements is the top of the box
8517- in the vertical direction, and the same position horizontally that a
8518- zero width, zero height inline replaced element would have if placed
8519- in the element. (This, for example, respects the <a href="text.html#propdef-text-align" class="noxref"><span
8520- class="propinst-text-align">'text-align'</span></a> property.)
8516+ blocks or inline tables), and do not end with a preserved newline must
8517+ be treated as zero-height line boxes for the purposes of determining
8518+ the positions of any elements inside of them, and must be treated as
8519+ not existing for any other purpose.
85218520</p>
85228521<div class="html-example"><p>
85238522Here is an example of inline box construction. The following paragraph
@@ -10267,14 +10266,28 @@ <h2>10.1 <a name="containing-block-details">Definition of "containing
1026710266in the case of continuous media or the page area in the case of paged media.
1026810267</li>
1026910268<li>If the element has 'position: absolute', the containing block is
10270- the <a href="box.html#padding-edge">padding edge</a> of the nearest
10271- ancestor with a <a href="visuren.html#propdef-position" class="noxref"><span class="propinst-position">'position'</span></a> of
10272- 'absolute', 'relative' or 'fixed'. If there is no such ancestor, the
10273- containing block is the initial containing block. In CSS 2.1, if
10274- that nearest ancestor is an <a
10275- href="visuren#inline-level">inline-level element</a> that splits
10269+ established by the nearest ancestor with a <a href="visuren.html#propdef-position" class="noxref"><span
10270+ class="propinst-position">'position'</span></a> of 'absolute', 'relative'
10271+ or 'fixed', in the following way:
10272+ <ol>
10273+ <li>In the case that the ancestor is an <a
10274+ href="visuren#inline-level">inline-level element,</a> the containing
10275+ block is the bounding box around the first and the last inline boxes
10276+ generated for that element. In CSS 2.1, if the inline-level
10277+ element is split
1027610278across multiple lines, the containing block is undefined.
1027710279</li>
10280+ <li>Otherwise, the containing block
10281+ is formed by the <a href="box.html#padding-edge">padding edge</a> of
10282+
10283+ the ancestor.
10284+ </li>
10285+ </ol>
10286+
10287+ <p>If there is no such ancestor, the containing block is the initial
10288+ containing block.
10289+ </p>
10290+ </li>
1027810291</ol>
1027910292
1028010293<p>In paged media, an absolutely positioned element is positioned
@@ -19781,7 +19794,7 @@ <H2>B.2 <a name="informative">Informative references</a></H2>
1978119794class="informref">[BCP47]</A></STRONG></DT>
1978219795
1978319796<DD>"Tags for Identifying Languages", A. Phillips, M. Davis, September
19784- 20091 .<BR> Available at <A
19797+ 2009 .<BR> Available at <A
1978519798href="http://www.rfc-editor.org/rfc/bcp/bcp47.txt">
1978619799http://www.rfc-editor.org/rfc/bcp/bcp47.txt</A>.
1978719800
@@ -26925,37 +26938,30 @@ <h3 id=u.10.1><a name="q502">C.8.8 </a><a
2692526938is inline and split over multiple lines:
2692626939
2692726940<blockquote>
26928- <p>4. If the element has 'position: absolute', the containing block is
26929- <del>established by</del> <ins>the padding edge of</ins> the nearest
26930- ancestor with a 'position' of 'absolute', 'relative' or 'fixed'<del>,
26931- in the following way:</del><ins>.</ins>
26941+ <p>4. If the element has 'position: absolute' [&hellip] following way;
2693226942<ol>
26933- <li><del>In the case that the ancestor is an inline box, the
26934- containing block depends on the 'direction' property of the
26935- ancestor:</del>
26936- <ol>
26937- <li><del>If the 'direction' is 'ltr', the top and left of the
26938- containing block are the top and left padding edges of the first
26939- box generated by the ancestor, and the bottom and right are the
26940- bottom and right padding edges of the last box of the
26941- ancestor.</del>
26942-
26943- <li><del>If the 'direction' is 'rtl', the top and right are the
26944- top and right padding edges of the first box generated by the
26945- ancestor, and the bottom and left are the bottom and left padding
26946- edges of the last box of the ancestor.</del>
26947- </ol>
26948- <p><del>Note: This may cause the containing block's width to be
26949- negative.</del>
26950-
26951- <li><del>Otherwise, the containing block is formed by the padding edge of
26952- the ancestor.</del>
26953- </ol>
26954-
26955- <p>If there is no such ancestor, the containing block is the initial
26956- containing block. <ins>In CSS 2.1, if that nearest ancestor is an
26957- inline-level element that splits across multiple lines the containing
26943+ <li>In the case that the ancestor is an <del>inline box</del>
26944+ <ins>inline-level element</ins>, the containing block <del>depends on
26945+ the <a href="visuren.html#propdef-direction" class="noxref"><span class="propinst-direction">'direction'</span></a> property of
26946+ the ancestor:</del> <ins>is the bounding box around the first and the
26947+ last inline boxes generated for that element. In CSS 2.1, if the
26948+ inline-level element is split across multiple lines, the containing
2695826949block is undefined.</ins>
26950+ <ol>
26951+ <li><del>If the <a href="visuren.html#propdef-direction" class="noxref"><span class="propinst-direction">'direction'</span></a> is
26952+ 'ltr', the top and left of the containing block are the top and left
26953+ padding edges of the first box generated by the ancestor, and the
26954+ bottom and right are the bottom and right padding edges of the last
26955+ box of the ancestor.</del>
26956+
26957+ <li><del>If the <a href="visuren.html#propdef-direction" class="noxref"><span class="propinst-direction">'direction'</span></a> is
26958+ 'rtl', the top and right are the top and right padding edges of the
26959+ first box generated by the ancestor, and the bottom and left are the
26960+ bottom and left padding edges of the last box of the ancestor.</del>
26961+ </ol>
26962+ <p class=note><del>Note: This may cause the containing block's width
26963+ to be negative.</del>
26964+ </ol>
2695926965</blockquote>
2696026966
2696126967
@@ -27209,28 +27215,23 @@ <h3 id=u.9.4.2a><a name="q514">C.8.20 </a><a
2720927215href="/TR/2010/WD-CSS2-20101207/visuren.html#inline-formatting">9.4.2
2721027216Inline formatting contexts</a></h3>
2721127217
27212- <p>Rather than define “zero-height line boxes” that must
27213- be ignored next to a margin, define precisely when an empty element
27214- generates no line boxes at all and define separately what the static
27215- position of positioned descendants is.
27218+ <p>Empty line boxes aren't generated at all, rather than just ignored
27219+ for margin collapsing. But their virtual position must still be
27220+ calculated if they contain empty inlines with absolutely positioned or
27221+ floating descendants:
2721627222
2721727223<blockquote>
27218- <p><del>Line boxes that contain</del> <ins>If an element
27219- contains</ins>
27220- no text, no preserved white space, no inline elements with non-zero
27221- margins, padding, or borders, and no other in-flow content (such as
27222- images, inline blocks or inline tables),
27223- <del>and do not end with a forced line break must be treated as
27224- zero-height line boxes.</del>
27225- <ins>then no line boxes are generated inside the element.</ins>
27226- <del>For the purposes of margin collapsing, this
27227- line box must be ignored.</del>
27228- <ins>The <a href="visudet.html#static-position">static
27229- position</a> of any child elements is the top of the box in the
27230- vertical direction, and the same position horizontally that a zero
27231- width, zero height inline replaced element would have if placed in the
27232- element. (This, for example, respects the <a href="text.html#propdef-text-align" class="noxref"><span
27233- class="propinst-text-align">'text-align'</span></a> property.)</ins>
27224+ <p><ins>Line boxes are created as needed to hold inline-level content
27225+ within an inline formatting context.</ins> Line boxes that contain no
27226+ text, no <a href="text.html#white-space-prop">preserved white
27227+ space,</a> no inline elements with non-zero margins, padding, or
27228+ borders, and no other <a href="#positioning-scheme">in-flow</a>
27229+ content (such as images, inline blocks or inline tables), and do not
27230+ end with a <del>line feed</del> <ins>preserved newline</ins> must be
27231+ treated as zero-height line boxes <ins>for the purposes of determining
27232+ the positions of any elements inside of them, and treated as not
27233+ existing for any other purpose.</ins> <del>For the purposes of
27234+ margin collapsing, this line box must be ignored.</del>
2723427235</blockquote>
2723527236
2723627237
0 commit comments