gecko-dev/testing/web-platform/tests/css/css-position/position-sticky-scroll-reposition-ref.html
Chris Harrelson 1795d587ea Bug 1618421 [wpt PR 22000] - Don't let a CompositingInputsRoot be a contain:strict element if it was dirty., a=testonly
Automatic update from web-platform-tests
Don't let a CompositingInputsRoot be a contain:strict element if it was dirty.

contain:strict elements are stopping points for ancestor recursion when
finding a CompositingInputsRoot, but this should only be for when
*descendants* of the contain:strict element are dirtied, not the
contain:strict element itself.

This problem exhibited in a bug in a case when the contain:strict
element was also position:sticky, causing it to fail to update sticky
position constraints as a result.

Bug: 1051455

Change-Id: If7e9f3d19ce5dc949ee9ba6ab7c0c0c2e03b2f20
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2076546
Reviewed-by: Manuel Rego <rego@igalia.com>
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745093}

--

wpt-commits: 859d8a4995e90ac5820ea4ae123aea72996c1a57
wpt-pr: 22000
2020-03-05 10:49:16 +00:00

10 lines
633 B
HTML

<!doctype html>
<title>Test that style mutation of contain:strict plus position:sticky updates sticky position</title>
<link rel="help" href="https://www.w3.org/TR/css-position-3/#sticky-pos">
<link rel="author" title="Chris Harrelson" href="mailto:chrishtr@chromium.org">
<div id="scroller" style="width: 200px; height: 200px; overflow-y: scroll;
will-change: transform;">
<div id="scrollbar" style="width: 100px; height: 100px; position: sticky; background: lightblue;
top: 5px; left: 50px; contain: strict;"></div>
<div style="width: 100px; height: 500px;"></div>
</div>