Partial implementation of keyword sizes for block layout (#34568)

Adds support for min-content, max-content, fit-content and stretch,
for block-level elements that don't establish an independent formatting
context, and for block-level elements when there is no float.

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
Oriol Brufau 2024-12-16 13:34:57 +01:00 committed by GitHub
parent 6be403d8b4
commit eb82161a8a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
115 changed files with 244 additions and 632 deletions

View file

@ -0,0 +1,2 @@
[background-gradient-interpolation-002.html]
expected: FAIL

View file

@ -0,0 +1,12 @@
[layer-counter-style-override.html]
[@counter-style unlayered overrides layered]
expected: FAIL
[@counter-style override between layers]
expected: FAIL
[@counter-style override update with appended sheet 1]
expected: FAIL
[@counter-style override update with appended sheet 2]
expected: FAIL

View file

@ -1,16 +0,0 @@
[flex-minimum-width-flex-items-014.html]
[body > div 3]
expected: FAIL
[body > div 2]
expected: FAIL
[body > div 6]
expected: FAIL
[body > div 5]
expected: FAIL
[body > div 4]
expected: FAIL

View file

@ -1,2 +0,0 @@
[gap-016.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[gap-019.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[gap-020.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[gap-021.html]
expected: FAIL

View file

@ -1,3 +0,0 @@
[col-wrap-004.html]
[body > div 1]
expected: FAIL

View file

@ -1,3 +0,0 @@
[col-wrap-010.html]
[body > div 1]
expected: FAIL

View file

@ -1,2 +0,0 @@
[col-wrap-011.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[col-wrap-012.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[col-wrap-015.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[col-wrap-016.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[col-wrap-017.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[row-006.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[row-007.html]
expected: FAIL

View file

@ -1,33 +0,0 @@
[row-008.html]
[.min-width-flexbox 1]
expected: FAIL
[.min-width-flexbox 2]
expected: FAIL
[.min-width-flexbox 3]
expected: FAIL
[.min-width-flexbox 4]
expected: FAIL
[.min-width-flexbox 5]
expected: FAIL
[.min-width-flexbox 6]
expected: FAIL
[.min-width-flexbox 7]
expected: FAIL
[.min-width-flexbox 8]
expected: FAIL
[.min-width-flexbox 9]
expected: FAIL
[.min-width-flexbox 10]
expected: FAIL
[.min-width-flexbox 11]
expected: FAIL

View file

@ -1,2 +0,0 @@
[table-as-flex-item-max-content.html]
expected: FAIL

View file

@ -1,27 +1,3 @@
[empty-grid-001.html]
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
[.grid 6]
expected: FAIL
[.grid 7]
expected: FAIL
[.grid 8]
expected: FAIL
[.grid 9]
expected: FAIL

View file

@ -1,16 +1,4 @@
[grid-align-justify-margin-border-padding.html]
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
@ -20,9 +8,6 @@
[.grid 7]
expected: FAIL
[.grid 8]
expected: FAIL
[.grid 9]
expected: FAIL

View file

@ -1,22 +1,10 @@
[grid-align-justify-overflow.html]
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
[.grid 6]
expected: FAIL
[.grid 7]
expected: FAIL

View file

@ -1,40 +1,7 @@
[grid-align-justify-stretch.html]
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
[.grid 6]
expected: FAIL
[.grid 7]
expected: FAIL
[.grid 8]
expected: FAIL
[.grid 9]
expected: FAIL
[.grid 10]
expected: FAIL
[.grid 11]
expected: FAIL
[.grid 12]
expected: FAIL
[.grid 13]
expected: FAIL

View file

@ -1,25 +1,16 @@
[grid-align.html]
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
[.grid 6]
expected: FAIL
[.grid 7]
expected: FAIL
[.grid 8]
expected: FAIL

View file

@ -1,2 +0,0 @@
[grid-container-auto-margins-scrollbars-001.html]
expected: FAIL

View file

@ -32,9 +32,6 @@
[.grid 15]
expected: FAIL
[.grid 16]
expected: FAIL
[.grid 17]
expected: FAIL

View file

@ -1,2 +0,0 @@
[child-border-box-and-max-content-001.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[child-border-box-and-max-content-002.html]
expected: FAIL

View file

@ -1,28 +1,16 @@
[grid-auto-repeat-max-size-001.tentative.html]
[.grid 10]
expected: FAIL
[.grid 11]
expected: FAIL
[.grid 13]
expected: FAIL
[.grid 14]
expected: FAIL
[.grid 15]
expected: FAIL
[.grid 16: Percentage padding, min-content]
expected: FAIL
[.grid 17]
expected: FAIL
[.grid 18]
expected: FAIL
[.grid 19: Percentage padding, max-content]
expected: FAIL

View file

@ -0,0 +1,6 @@
[grid-auto-repeat-max-size-002.html]
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL

View file

@ -1,16 +1,10 @@
[grid-automatic-minimum-intrinsic-aspect-ratio-001.html]
[.container 1]
expected: FAIL
[.container 2]
expected: FAIL
[.container 3]
expected: FAIL
[.container 4]
expected: FAIL
[.container 5]
expected: FAIL
@ -20,23 +14,8 @@
[.container 7]
expected: FAIL
[.container 8]
expected: FAIL
[.container 9]
expected: FAIL
[.container 10]
expected: FAIL
[.container 11]
expected: FAIL
[.container 12]
expected: FAIL
[.container 13]
expected: FAIL
[.container 14]
expected: FAIL

View file

@ -1,6 +0,0 @@
[compute-intrinsic-widths-scrollbar-001.html]
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL

View file

@ -1,48 +0,0 @@
[grid-container-margin-border-padding-scrollbar-001.html]
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
[.grid 6]
expected: FAIL
[.grid 7]
expected: FAIL
[.grid 8]
expected: FAIL
[.grid 9]
expected: FAIL
[.grid 10]
expected: FAIL
[.grid 11]
expected: FAIL
[.grid 12]
expected: FAIL
[.grid 13]
expected: FAIL
[.grid 14]
expected: FAIL
[.grid 15]
expected: FAIL
[.grid 16]
expected: FAIL

View file

@ -1,9 +0,0 @@
[grid-container-sizing-constraints-001.html]
[.grid 4]
expected: FAIL
[.grid 9]
expected: FAIL
[.grid 14]
expected: FAIL

View file

@ -1,2 +0,0 @@
[grid-floats-no-intrude-002.html]
expected: FAIL

View file

@ -1,25 +1,10 @@
[grid-gutters-and-tracks-001.html]
[.grid 1]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
[.grid 7]
expected: FAIL
[.grid 8]
expected: FAIL
[.grid 9]
expected: FAIL
[.grid 12]
expected: FAIL

View file

@ -2,18 +2,9 @@
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 6]
expected: FAIL
[.grid 9]
expected: FAIL

View file

@ -1,15 +0,0 @@
[flex-and-intrinsic-sizes-001.html]
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
[.grid 6]
expected: FAIL

View file

@ -1,57 +1,9 @@
[grid-container-percentage-002.html]
[.grid 1]
expected: FAIL
[.grid 4]
expected: FAIL
[.grid 5]
expected: FAIL
[.grid 6]
expected: FAIL
[.grid 7]
expected: FAIL
[.grid 9]
expected: FAIL
[.grid 10]
expected: FAIL
[.grid 11]
expected: FAIL
[.grid 12]
expected: FAIL
[.grid 13]
expected: FAIL
[.grid 15]
expected: FAIL
[.grid 16]
expected: FAIL
[.grid 17]
expected: FAIL
[.grid 18]
expected: FAIL
[.grid 19]
expected: FAIL
[.grid 21]
expected: FAIL
[.grid 22]
expected: FAIL
[.grid 23]
expected: FAIL
[.grid 24]
expected: FAIL

View file

@ -1,12 +0,0 @@
[grid-item-margin-auto-columns-rows-001.html]
[.grid 1]
expected: FAIL
[.grid 2]
expected: FAIL
[.grid 3]
expected: FAIL
[.grid 4]
expected: FAIL

View file

@ -1,2 +0,0 @@
[dynamic-min-content-001.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[dynamic-min-content-002.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[dynamic-min-content-003.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[standalone-axis-size-006.html]
expected: FAIL

View file

@ -1,6 +0,0 @@
[inline-size-computed.html]
[Property inline-size value 'min-content']
expected: FAIL
[Property inline-size value 'max-content']
expected: FAIL

View file

@ -514,3 +514,21 @@
[Web Animations: property <width> from neutral to [min-content\] at (1.5) should be [min-content\]]
expected: FAIL
[CSS Transitions with transition-behavior:allow-discrete: property <width> from [auto\] to [fit-content\] at (-0.3) should be [auto\]]
expected: FAIL
[CSS Transitions with transition-behavior:allow-discrete: property <width> from [auto\] to [fit-content\] at (0) should be [auto\]]
expected: FAIL
[CSS Transitions with transition-behavior:allow-discrete: property <width> from [auto\] to [fit-content\] at (0.3) should be [auto\]]
expected: FAIL
[CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <width> from [auto\] to [fit-content\] at (-0.3) should be [auto\]]
expected: FAIL
[CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <width> from [auto\] to [fit-content\] at (0) should be [auto\]]
expected: FAIL
[CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <width> from [auto\] to [fit-content\] at (0.3) should be [auto\]]
expected: FAIL

View file

@ -1,2 +0,0 @@
[block-aspect-ratio-056.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[block-aspect-ratio-057.tentative.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[grid-aspect-ratio-027.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-size-007.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-size-020.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-size-021.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-size-022.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-size-023.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-size-024.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-size-025.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[block-size-with-min-or-max-content-1a.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[block-size-with-min-or-max-content-2.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[block-size-with-min-or-max-content-3.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[border-box-and-max-content-001.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[border-box-and-max-content-003.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[calc-margins-block.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[calc-margins-fieldset-content.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[calc-margins-fieldset-legend.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[calc-margins-flex.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[fit-content-max-inline-size.tentative.html]
expected: FAIL

View file

@ -1,9 +0,0 @@
[fit-content-percentage-padding.html]
[Initial layout]
expected: FAIL
[Shrink width]
expected: FAIL
[Grow width]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-percent-replaced-012.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-percent-replaced-013.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-percent-replaced-022.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[intrinsic-percent-replaced-023.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[min-content-min-width-000.html]
expected: FAIL

View file

@ -1,3 +0,0 @@
[percentage-min-width.html]
[#container 1]
expected: FAIL

View file

@ -1,3 +0,0 @@
[auto-margins-1.html]
[[data-expected-width\] 2]
expected: FAIL

View file

@ -1,27 +0,0 @@
[block-height-001.html]
[[data-expected-height\] 1]
expected: FAIL
[[data-expected-height\] 2]
expected: FAIL
[[data-expected-height\] 3]
expected: FAIL
[[data-expected-height\] 7]
expected: FAIL
[[data-expected-height\] 8]
expected: FAIL
[[data-expected-height\] 9]
expected: FAIL
[[data-expected-height\] 13]
expected: FAIL
[[data-expected-height\] 14]
expected: FAIL
[[data-expected-height\] 15]
expected: FAIL

View file

@ -1,6 +1,3 @@
[block-height-002.tentative.html]
[main > div > div 1]
expected: FAIL
[main > div > div 2]
expected: FAIL

View file

@ -2,17 +2,8 @@
[.inner 1]
expected: FAIL
[.inner 2]
expected: FAIL
[.inner 3]
expected: FAIL
[.inner 4]
expected: FAIL
[.inner 5]
expected: FAIL
[.inner 6]
expected: FAIL

View file

@ -1,9 +1,3 @@
[content-contribution-001.html]
[.test 1]
expected: FAIL
[.test 2]
expected: FAIL
[.test 5]
expected: FAIL

View file

@ -0,0 +1,3 @@
[indefinite-2.html]
[[data-expected-client-height\] 1]
expected: FAIL

View file

@ -0,0 +1,3 @@
[indefinite-3.html]
[[data-expected-client-height\] 1]
expected: FAIL

View file

@ -1,2 +0,0 @@
[min-width-1.html]
expected: FAIL

View file

@ -1,7 +1,4 @@
[stretch-block-size-001.html]
[[data-expected-height\] 1]
expected: FAIL
[[data-expected-height\] 8]
expected: FAIL
@ -14,12 +11,6 @@
[[data-expected-height\] 22]
expected: FAIL
[[data-expected-height\] 23]
expected: FAIL
[[data-expected-height\] 24]
expected: FAIL
[[data-expected-height\] 31]
expected: FAIL
@ -31,6 +22,3 @@
[[data-expected-height\] 45]
expected: FAIL
[[data-expected-height\] 46]
expected: FAIL

View file

@ -1,7 +1,4 @@
[stretch-max-block-size-001.html]
[[data-expected-height\] 1]
expected: FAIL
[[data-expected-height\] 8]
expected: FAIL
@ -14,9 +11,6 @@
[[data-expected-height\] 22]
expected: FAIL
[[data-expected-height\]:not([skip-second-pass\]) 24]
expected: FAIL
[[data-expected-height\]:not([skip-second-pass\]) 31]
expected: FAIL
@ -28,3 +22,6 @@
[[data-expected-height\]:not([skip-second-pass\]) 45]
expected: FAIL
[[data-expected-height\] 23]
expected: FAIL

View file

@ -1,7 +1,4 @@
[stretch-max-inline-size-001.html]
[[data-expected-width\] 1]
expected: FAIL
[[data-expected-width\] 8]
expected: FAIL
@ -14,9 +11,6 @@
[[data-expected-width\] 22]
expected: FAIL
[[data-expected-width\]:not([skip-second-pass\]) 24]
expected: FAIL
[[data-expected-width\]:not([skip-second-pass\]) 31]
expected: FAIL
@ -28,3 +22,6 @@
[[data-expected-width\]:not([skip-second-pass\]) 45]
expected: FAIL
[[data-expected-width\] 23]
expected: FAIL

View file

@ -1,7 +1,4 @@
[stretch-min-block-size-001.html]
[[data-expected-height\] 1]
expected: FAIL
[[data-expected-height\] 8]
expected: FAIL
@ -17,12 +14,6 @@
[[data-expected-height\] 22]
expected: FAIL
[[data-expected-height\] 23]
expected: FAIL
[[data-expected-height\] 24]
expected: FAIL
[[data-expected-height\] 31]
expected: FAIL
@ -37,6 +28,3 @@
[[data-expected-height\] 45]
expected: FAIL
[[data-expected-height\] 46]
expected: FAIL

View file

@ -1,7 +1,4 @@
[stretch-min-inline-size-001.html]
[[data-expected-width\] 1]
expected: FAIL
[[data-expected-width\] 8]
expected: FAIL
@ -17,12 +14,6 @@
[[data-expected-width\] 22]
expected: FAIL
[[data-expected-width\] 23]
expected: FAIL
[[data-expected-width\] 24]
expected: FAIL
[[data-expected-width\] 31]
expected: FAIL
@ -37,6 +28,3 @@
[[data-expected-width\] 45]
expected: FAIL
[[data-expected-width\] 46]
expected: FAIL

View file

@ -1,2 +0,0 @@
[whitespace-and-break.html]
expected: FAIL

View file

@ -1,7 +1,4 @@
[table-width-redistribution.html]
[table 3]
expected: FAIL
[table 5]
expected: FAIL

View file

@ -1,2 +0,0 @@
[overflow-wrap-min-content-size-006.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-center-vlr.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-center.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-end-vlr.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-end.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-left-vlr.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-left.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-right-vlr.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-right.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-start-vlr.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-group-align-start.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[pre-wrap-017.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[white-space-intrinsic-size-005.html]
expected: FAIL

Some files were not shown because too many files have changed in this diff Show more