Files
sousa-gecko/testing/web-platform/tests/css/css-transforms/offset-change-inline-backface-visibility-hidden.html
T
Xianzhu Wang 2b8bd814b1 Bug 2026568 [wpt PR 58755] - Fix paint offset of inline with backface-visibility:hidden, a=testonly
Automatic update from web-platform-tests
Fix paint offset of inline with backface-visibility:hidden

This fixes the bug when PaintOffsetTranslationForComposited is enabled.
Now don't create PaintOffsetTranslation for a LayoutInline with
backface-visibility:hidden if it doesn't have a self-painting layer.
This is because for now such a LayoutInline doesn't know how to apply
paint properties.

This CL keeps status:"test" for PaintOffsetTranslationForComposited.

It's complex to let inline painting support non-self-painting-layer
paint properties on LayoutInlines because the text fragments don't
have property tree states. Nevertheless, as backface-visibility:hidden
might be the only case, ongoing css discussions about creating
stacking context in the case might be the ultimate solution.

Bug: 455884493, 495746269
Change-Id: I67144314ee1551287be578bef2089a853d7d5194
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7698719
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1605208}

--

wpt-commits: b96657862bd2d7351a98a9d826af8f8d09122acf
wpt-pr: 58755
2026-04-09 19:28:17 +00:00

24 lines
903 B
HTML

<!doctype HTML>
<html class="reftest-wait">
<title>CSS Test: Repaint after moving an inline element with backface-visibility:hidden</title>
<link rel="author" title="Xianzhu Wang" href="mailto:wangxianzhu@chromium.org" />
<link rel="help" href="https://drafts.csswg.org/css-transforms-2/#propdef-backface-visibility">
<link rel="help" href="https://crbug.com/455884493">
<link rel="match" href="offset-change-inline-backface-visibility-hidden-ref.html">
<link rel="stylesheet" href="/fonts/ahem.css">
<script src="/common/reftest-wait.js"></script>
<div id="container">
<div style="width: 100px; background: green; font-family: ahem">
<span style="backface-visibility: hidden">X</span>
</div>
</div>
<script>
onload = function() {
requestAnimationFrame(() => requestAnimationFrame(() => {
container.style.marginLeft = '100px';
takeScreenshot();
}));
};
</script>
</html>