Bug 1743049 [wpt PR 31752] - Fix absolute-position under non-containing stacking context, a=testonly

Automatic update from web-platform-tests
Fix absolute-position under non-containing stacking context

When a stacking context has non-contained absolute-position descendant,
and the stacking context is forced by its ancestor to update cull rect,
the stacking context needs to propagate the forced cull rect update
flag to descendants because the cull rect of non-contained
absolute-position descendant depends on the contents cull rect of its
container instead of the non-containing stacking context.

Bug: 1273431
Change-Id: I8155df211fd4781c1c97f25302d2ebd22c3e8309
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3302093
Auto-Submit: Xianzhu Wang <wangxianzhu@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/main@{#945771}

--

wpt-commits: 7066b521e6f243238590f6242a123a841f22dcc6
wpt-pr: 31752
This commit is contained in:
Xianzhu Wang 2021-11-30 04:27:04 +00:00 коммит произвёл moz-wptsync-bot
Родитель 9ce9bd86e7
Коммит 5acb165c16
2 изменённых файлов: 26 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,9 @@
<!DOCTYPE html>
<div id="scroller" style="width: 200px; height: 200px; overflow: auto">
<div style="height: 0; opacity: 0.5; margin: 250px">
<div style="width: 100px; height: 100px; background: green"></div>
</div>
</div>
<script>
scroller.scrollTo(200, 200);
</script>

Просмотреть файл

@ -0,0 +1,17 @@
<!DOCTYPE html>
<html class="reftest-wait">
<link rel="help" href="https://crbug.com/1273431">
<link rel="match" href="position-absolute-under-non-containing-stacking-context-ref.html">
<script src="/common/rendering-utils.js"></script>
<script src="/common/reftest-wait.js"></script>
<div id="scroller" style="width:200px; height: 200px; overflow: auto; position: relative">
<div style="height: 0; overflow: hidden; opacity: 0.5; margin: 250px">
<div style="width: 100px; height: 100px; position: absolute; background: green"></div>
</div>
</div>
<script>
waitForAtLeastOneFrame().then(() => {
scroller.scrollTo(200, 200);
takeScreenshot();
});
</script>