Bug 203449
| Summary: | css/css-position/position-relative-table* tests fail | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> |
| Component: | Layout and Rendering | Assignee: | Nobody <webkit-unassigned> |
| Status: | NEW | ||
| Severity: | Normal | CC: | ahmad.saleem792, bfulgham, csaavedra, ehutchison, eric, karlcow, mrobinson, simon.fraser, webkit-bot-watchers-bugzilla, webkit-bug-importer, zalan |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| See Also: |
https://bugs.webkit.org/show_bug.cgi?id=203446 https://bugs.webkit.org/show_bug.cgi?id=240961 |
||
Simon Fraser (smfr)
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tbody-left-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tbody-left.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tbody-top-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tbody-top.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tfoot-left-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tfoot-left.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tfoot-top-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tfoot-top.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-thead-left-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-thead-left.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-thead-top-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-thead-top.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tr-left-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tr-left.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tr-top-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tr-top.html [ ImageOnlyFailure ]
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Martin Robinson
Tests newly failing with the latest import:
webkit.org/b/203449 imported/w3c/web-platform-tests/css/css-position/position-relative-001.html [ ImageOnlyFailure ]
webkit.org/b/203449 imported/w3c/web-platform-tests/css/css-position/position-relative-002.html [ ImageOnlyFailure ]
webkit.org/b/203449 imported/w3c/web-platform-tests/css/css-position/position-relative-011.html [ ImageOnlyFailure ]
Eric Hutchison
imported/w3c/web-platform-tests/css/css-position/position-relative-003.html
imported/w3c/web-platform-tests/css/css-position/position-relative-004.html
are also now failing (BigSur, Monterey wk1).
Radar WebKit Bug Importer
<rdar://problem/82081662>
Eric Hutchison
Updated test expectations at http://trac.webkit.org/changeset/281194/webkit.
Eric Hutchison
Reproduced test results locally using run-webkit-tests -1 -f --force --iterations 1000 --exit-after-n-failures 1 --clobber-old-results imported/w3c/web-platform-tests/css/css-position/position-relative-004.html on r281186.
Claudio Saavedra
imported/w3c/web-platform-tests/css/css-position/position-relative-002.html passing for a while in all platforms.
Eric Meyer
The `tr` and `td`-related tests are passing as of TP243. The rest of the list above are not.
Karl Dubost
Thanks Eric!
The tests still failing are
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tbody-left-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tbody-left.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tbody-top-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tbody-top.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tfoot-left-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tfoot-left.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tfoot-top-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-tfoot-top.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-thead-left-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-thead-left.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-thead-top-absolute-child.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-position/position-relative-table-thead-top.html [ ImageOnlyFailure ]
Karl Dubost
Bug 240961 only fixed rows, not sections.
Source/WebCore/style/StyleAdjuster.cpp:488-493:
https://searchfox.org/wubkat/rev/68f2a0d2a5f6fc91cbfb573ccf94fceaaa2f162c/Source/WebCore/style/StyleAdjuster.cpp#488-493
```cpp
// We do not honor position:relative or position:sticky on table row groups. Table rows are
// allowed to be position:relative (they extend RenderBlock and can be proper containing blocks).
if ((style.display() == DisplayType::TableHeaderGroup || style.display() == DisplayType::TableRowGroup
|| style.display() == DisplayType::TableFooterGroup)
&& style.position() == PositionType::Relative)
style.setPosition(PositionType::Static);
```
The position: relative on <tbody>/<thead>/<tfoot> is silently rewritten to static before layout ever sees it, so the green .relative box paints at (0,0) and the red .indicator shows through
Bug 240961 (commit 27d1a32af9b1, Apr 2026) fixed the <tr> variants by promoting RenderTableRow from RenderBox to RenderBlock, adding isPositioned() to RenderTableRow::requiresLayer(), and making cells row-relative. The StyleAdjuster guard was narrowed to row groups only as part of that patch.