@@ -437,130 +437,157 @@ Size Containment</h3>
437437 contain-size-056.html
438438 </wpt>
439439
440- 1.
441- The [=intrinsic sizes=] of the [=size containment box=]
442- are determined as if the element had no content,
443- following the same logic as when [=sizing as if empty=] .
444-
445- Note: This affects explicit invocations of the ''min-content'' or ''max-content'' keywords,
446- as well as any calculation that depends on these measurement,
447- such as sizing <span class=informative> [=grid tracks=] </span> into which a size contained item is placed,
448- or if [=fit-content sizing=] the containment box's parent.
449-
450- <wpt>
451- contain-size-013.html
452- contain-size-041.html
453- contain-size-042.html
454- contain-size-replaced-001.html
455- contain-size-replaced-002.html
456- contain-size-replaced-003a.html
457- contain-size-replaced-003b.html
458- contain-size-replaced-003c.html
459- contain-size-replaced-004.html
460- contain-size-replaced-005.html
461- contain-size-replaced-006.html
462- </wpt>
463-
464- 2. Laying out a [=size containment box=] and its content is conceptually done in two phases:
465- <dl>
466- <dt> <dfn>Sizing as if empty</dfn>
467- <dd>
468- The [=used value|used=] 'width' and 'height' of the [=size containment box|containment box=]
469- are determined as if performing a normal layout of the box,
470- except that it is treated as having no content--
471- not even through pseudo elements such as ''::before'' , ''::after'' , or ''::marker'' .
472-
473- <wpt>
474- contain-size-021.html
475- contain-size-023.html
476- contain-size-025.html
477- contain-size-027.html
478- contain-size-061.html
479- contain-size-062.html
480- contain-size-063.html
481- contain-size-borders.html
482- contain-size-fieldset-001.html
483- contain-size-fieldset-002.html
484- contain-size-select-001.html
485- contain-size-select-002.html
486- contain-size-scrollbars-001.html
487- contain-size-scrollbars-002.html
488- contain-size-scrollbars-003.html
489- contain-size-scrollbars-004.html
490-
491- contain-size-button-001.html
492- contain-size-flexbox-001.html
493- contain-size-flexbox-002.html
494- contain-size-grid-001.html
495- </wpt>
496-
497- <a>Replaced elements</a> must be treated as having an intrinsic width and height of 0
498- and no [=intrinsic aspect ratio=] .
499-
500- Note: Size containment only suppresses the [=intrinsic aspect ratio=] ,
501- so properties like 'aspect-ratio' which affect that [=preferred aspect ratio=] directly
502- are honored.
503-
504- <wpt>
505- contain-size-013.html
506- contain-size-041.html
507- contain-size-042.html
508- contain-size-replaced-001.html
509- contain-size-replaced-002.html
510- contain-size-replaced-003a.html
511- contain-size-replaced-003b.html
512- contain-size-replaced-003c.html
513- contain-size-replaced-004.html
514- contain-size-replaced-005.html
515- </wpt>
516- <wpt pathprefix=css/css-sizing/aspect-ratio/>
517- replaced-element-023.html
518- replaced-element-025.html
519- replaced-element-027.html
520- </wpt>
521-
522- All CSS properties of the [=size containment box=] are taken into account
523- as they would be when performing layout normally.
524- Other specifications may make specific exemptions.
525-
526- <wpt>
527- contain-size-replaced-006.html
528- </wpt>
440+ <div class=correction id=c1>
441+ <span class=marker> Candidate Correction 1:</span>
442+ The way this section was previously written was somewhat ambiguous,
443+ causing implementers to have some doubts about the precise intended effects
444+ in certain cases.
445+ This proposed rewrite clarifies what is meant,
446+ without changing the intended behavior.
447+ </div>
529448
530- Note: Even when the element's [=sizing properties=] specify an intrinsic size,
531- this does not necessarily make the element zero-sized:
532- properties set on the element itself
533- continue to be taken into account,
534- which can cause it to be larger.
449+ <ol>
450+ <li>
451+ <ins class=c1>
452+ The [=intrinsic sizes=] of the [=size containment box=]
453+ are determined as if the element had no content,
454+ following the same logic as when [=sizing as if empty=] .
535455
536- <wpt>
537- contain-size-grid-002.html
538- contain-size-grid-003.html
539- contain-size-multicol-001.html
540- contain-size-multicol-as-flex-item.html
541- </wpt>
456+ Note: This affects explicit invocations of the ''min-content'' or ''max-content'' keywords,
457+ as well as any calculation that depends on these measurement,
458+ such as sizing <span class=informative> [=grid tracks=] </span> into which a size contained item is placed,
459+ or if [=fit-content sizing=] the containment box's parent.
542460
543- <dt> <dfn>Laying out in-place</dfn>
544- <dd>
545- The [=size containment box|containment box=] 's content
546- (including any pseudo-elements)
547- must then be laid out into the now fixed-size [=size containment box|containment box=] normally.
548- </dl>
461+ <wpt>
462+ contain-size-013.html
463+ contain-size-041.html
464+ contain-size-042.html
465+ contain-size-replaced-001.html
466+ contain-size-replaced-002.html
467+ contain-size-replaced-003a.html
468+ contain-size-replaced-003b.html
469+ contain-size-replaced-003c.html
470+ contain-size-replaced-004.html
471+ contain-size-replaced-005.html
472+ contain-size-replaced-006.html
473+ </wpt>
474+ </ins>
549475
550- Note: [=Size containment=] does not suppress baseline alignment.
551- See [=layout containment=] for that.
476+ <li>
477+ <del class=c1>
478+ When calculating the size of [=size containment box=] ,
479+ it must be treated as having no contents.
480+ </del>
481+ <ins class=c1> Laying out a [=size containment box=] and its content is conceptually done in two phases:</ins>
482+ <dl>
483+ <dt><ins class=c1> <dfn>Sizing as if empty</dfn> </ins>
484+ <dd>
485+ <ins class=c1>
486+ The [=used value|used=] 'width' and 'height' of the [=size containment box|containment box=]
487+ are determined as if performing a normal layout of the box,
488+ except that it is treated as having no content--
489+ not even through pseudo elements such as ''::before'' , ''::after'' , or ''::marker'' .
490+
491+ <wpt>
492+ contain-size-021.html
493+ contain-size-023.html
494+ contain-size-025.html
495+ contain-size-027.html
496+ contain-size-061.html
497+ contain-size-062.html
498+ contain-size-063.html
499+ contain-size-borders.html
500+ contain-size-fieldset-001.html
501+ contain-size-fieldset-002.html
502+ contain-size-select-001.html
503+ contain-size-select-002.html
504+ contain-size-scrollbars-001.html
505+ contain-size-scrollbars-002.html
506+ contain-size-scrollbars-003.html
507+ contain-size-scrollbars-004.html
508+
509+ contain-size-button-001.html
510+ contain-size-flexbox-001.html
511+ contain-size-flexbox-002.html
512+ contain-size-grid-001.html
513+ </wpt>
514+
515+ <a>Replaced elements</a> must be treated as having an intrinsic width and height of 0
516+ and no [=intrinsic aspect ratio=] .
517+
518+ Note: Size containment only suppresses the [=intrinsic aspect ratio=] ,
519+ so properties like 'aspect-ratio' which affect that [=preferred aspect ratio=] directly
520+ are honored.
521+
522+ <wpt>
523+ contain-size-013.html
524+ contain-size-041.html
525+ contain-size-042.html
526+ contain-size-replaced-001.html
527+ contain-size-replaced-002.html
528+ contain-size-replaced-003a.html
529+ contain-size-replaced-003b.html
530+ contain-size-replaced-003c.html
531+ contain-size-replaced-004.html
532+ contain-size-replaced-005.html
533+ </wpt>
534+ <wpt pathprefix=css/css-sizing/aspect-ratio/>
535+ replaced-element-023.html
536+ replaced-element-025.html
537+ replaced-element-027.html
538+ </wpt>
539+
540+ All CSS properties of the [=size containment box=] are taken into account
541+ as they would be when performing layout normally.
542+ Other specifications may make specific exemptions.
543+
544+ <wpt>
545+ contain-size-replaced-006.html
546+ </wpt>
547+ </ins>
548+
549+ Note: Even when the element's [=sizing properties=] <del class=c1> are auto</del><ins class=c1> specify an intrinsic size</ins> ,
550+ this does not necessarily make the element zero-sized:
551+ properties set on the element itself<del class=c1> ,
552+ such as the 'columns' property or the 'grid' property,</del>
553+ continue to be taken into account<ins class=c1> ,
554+ which can cause it to be larger</ins> .
555+
556+ <wpt>
557+ contain-size-grid-002.html
558+ contain-size-grid-003.html
559+ contain-size-multicol-001.html
560+ contain-size-multicol-as-flex-item.html
561+ </wpt>
562+
563+ <dt><ins class=c1> <dfn>Laying out in-place</dfn> </ins>
564+ <dd>
565+ <del class=c1> Then, its contents</del>
566+ <ins class=c1>
567+ The [=size containment box|containment box=] 's content
568+ (including any pseudo-elements)
569+ </ins>
570+ must then be laid out into
571+ the <ins class=c1> now fixed-size</ins> [=size containment box|containment box=] <del class=c1> 's resolved size</del><ins class=c1> normally</ins> .
572+ </dl>
573+
574+ Note: [=Size containment=] does not suppress baseline alignment.
575+ See [=layout containment=] for that.
552576
553- <wpt>
554- contain-size-baseline-001.html
555- </wpt>
577+ <wpt>
578+ contain-size-baseline-001.html
579+ </wpt>
556580
557- 3. [=Size containment boxes=] are <a spec=css-break-3>monolithic</a> (See [[CSS-BREAK-3#possible-breaks]] ).
581+ <li>
582+ [=Size containment boxes=] are <a spec=css-break-3>monolithic</a> (See [[CSS-BREAK-3#possible-breaks]] ).
558583
559- <wpt>
560- contain-size-breaks-001.html
561- contain-size-monolithic-001.html
562- </wpt>
584+ <wpt>
585+ contain-size-breaks-001.html
586+ contain-size-monolithic-001.html
587+ </wpt>
588+ </ol>
563589
590+ <ins class=c1>
564591 <div class=example>
565592 Given the following markup and style, the image would be sized to 100px by 100px,
566593 as the aspect ratio set by the 'aspect-ratio' property takes effect.
@@ -579,6 +606,7 @@ Size Containment</h3>
579606 as its intrinsic aspect ratio is suppressed,
580607 and its intrinsic height is treated as 0.
581608 </div>
609+ </ins>
582610
583611 By itself, <a>size containment</a> does not offer much optimization opportunity.
584612 Its primary benefit on its own is that tools which want to lay out the [=size containment box|containment box=] 's contents
@@ -600,7 +628,7 @@ Size Containment</h3>
600628
601629 2. When laying out the page,
602630 if the [=size containment box|containment box=] is off-screen or obscured,
603- the layout of its contents (i.e. "[=laying out in-place=] ") can be delayed or done at a lower priority.
631+ the layout of its contents <ins class=c1> (i.e. "[=laying out in-place=] ") </ins> can be delayed or done at a lower priority.
604632
605633<h3 id='containment-layout'>
606634Layout Containment</h3>
0 commit comments