Bug 1463594 (css-contain-size)

Implement CSS "contain: size"

ASSIGNED
Assigned to

Status

()

Core
Layout
P3
normal
ASSIGNED
2 months ago
5 days ago

People

(Reporter: dholbert, Assigned: morgan)

Tracking

(Depends on: 3 bugs, Blocks: 1 bug)

Trunk
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

2 months ago
See https://drafts.csswg.org/css-contain/#containment-size
This bug is on making our layout/reflow code react appropriately to "contain: size".

Historical note: the behavior for "contain:size" was lumped in with layout containment in an earlier version of the spec, so I think part of this was included in the work-in-progress patch stack on bug 1178895.  But it's now been split out into its own keyword, which can be specified independently from (or together with) "contain:layout".

(Note that bug 1463589 will add CSS Parser support for "contain:size".)
(Reporter)

Updated

2 months ago
Assignee: nobody → mreschenberg
Blocks: 1150081
(Reporter)

Updated

2 months ago
status-firefox62: affected → ---
(Assignee)

Updated

2 months ago
Depends on: 1467209

Comment 1

a month ago
5 'inline-block' with 'contain: size' tests:

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-006.xht

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-007.xht

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-008.xht

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-009.xht

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-010.xht

More tests will come. 
Right now, Chromium 66.0.3359.117 and Chrome 68.0.3438.3 pass those 5 tests. 
Firefox 62.0a1 buildID=20180613220131 with layout.css.contain.enabled set to true fails those 5 tests.
(Reporter)

Comment 2

a month ago
Thanks, Gérard!

Comment 3

a month ago
Visit

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/

for inline-block tests (8 tests: from contain-size-006 to 013) and 

for inline-table tests (expecting 8 tests: from contain-size-021 to 028).



Reference files:

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-006-ref.xht

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-007-ref.xht

Comment 4

a month ago
> http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/
> 
> for inline-block tests (8 tests: from contain-size-006 to 013) and 
> 
> for inline-table tests (expecting 8 tests: from contain-size-021 to 028).


Those tests' filename numbers will unfortunately have to be changed because tests in

https://bugs.chromium.org/p/chromium/issues/detail?id=843329#c6

are already using those filename numbers.

Comment 5

a month ago
Tests with *new* filename numbers
- - - - - - - - - - - - - - - - -


http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/



for inline-block tests (8 tests: from contain-size-021 to 028)

New reference files:

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-021-ref.xht

http://www.gtalbot.org/BrowserBugsSection/CSS3Contain/contain-size-022-ref.xht



for inline-table tests (expecting 8 tests: from contain-size-031 to 038)
(I must reconsider those tests based on the fact that 'contain: size' does not apply to table elements and presumably redo these tests.)



for inline replaced element tests: contain-size-041 and contain-size-042



for table-cell tests: contain-size-051 and contain-size-052


for block box tests: 1 test for now: contain-size-061
(Assignee)

Updated

a month ago
Depends on: 1470176
(Assignee)

Updated

29 days ago
Depends on: 1470462
(Assignee)

Updated

25 days ago
Depends on: 1471267
(Assignee)

Updated

25 days ago
Depends on: 1471274
(Reporter)

Updated

11 days ago
Depends on: 1474663
(Assignee)

Updated

5 days ago
Depends on: 1476127
You need to log in before you can comment on or make changes to this bug.