diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
commit | 43a97878ce14b72f0981164f87f2e35e14151312 (patch) | |
tree | 620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/css/css-view-transitions/new-content-element-writing-modes.html | |
parent | Initial commit. (diff) | |
download | firefox-upstream.tar.xz firefox-upstream.zip |
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/css/css-view-transitions/new-content-element-writing-modes.html')
-rw-r--r-- | testing/web-platform/tests/css/css-view-transitions/new-content-element-writing-modes.html | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-view-transitions/new-content-element-writing-modes.html b/testing/web-platform/tests/css/css-view-transitions/new-content-element-writing-modes.html new file mode 100644 index 0000000000..20d81a67db --- /dev/null +++ b/testing/web-platform/tests/css/css-view-transitions/new-content-element-writing-modes.html @@ -0,0 +1,94 @@ +<!DOCTYPE html> +<html class=reftest-wait> +<title>Shared transitions: shared element writing-modes</title> +<link rel="help" href="https://github.com/WICG/view-transitions"> +<link rel="author" href="mailto:vmpstr@chromium.org"> +<link rel="match" href="new-content-element-writing-modes-ref.html"> +<script src="/common/reftest-wait.js"></script> +<style> +#hidden { + width: 100px; + height: 100px; + background: red; + position: absolute; + top: 0; + left: 0; + contain: paint; + view-transition-name: hidden; +} +.tb { writing-mode: horizontal-tb; } +.lr { writing-mode: vertical-lr; } +.rl { writing-mode: vertical-rl; } +.shared { + margin: 2px; + width: 100px; + height: 50px; + background: green; + contain: paint; + border: 1px solid black; +} +.source { + contain: layout; +} +#target { + background: red; + position: absolute; + top: 50px; + left: 50px; + width: 100px; + height: 500px; + contain: paint; +} + +html::view-transition-group(hidden) { animation-duration: 300s; } +html::view-transition-image-pair(hidden) { animation: unset; opacity: 0; } + +html::view-transition-group(s1), +html::view-transition-group(s2), +html::view-transition-group(s3) { animation-duration: 0s; } + +html::view-transition-new(s1), +html::view-transition-new(s2), +html::view-transition-new(s3) { animation: unset; opacity: 1; } + +html::view-transition-old(s1), +html::view-transition-old(s2), +html::view-transition-old(s3) { animation: unset; opacity: 0; } + +/* hide the root so we show transition background to ensure we're in a transition */ +html::view-transition-group(root) { animation: unset; opacity: 0; } +html::view-transition { background: lightpink; } + +</style> + +<div id=hidden>Should not be visible</div> +<div id=s1 class=source>Should not be visible</div> +<div id=s2 class=source>Should not be visible</div> +<div id=s3 class=source>Should not be visible</div> +<div id=one class="tb shared">T</div> +<div id=two class="lr shared">T</div> +<div id=three class="rl shared">T</div> + +<script> +failIfNot(document.startViewTransition, "Missing document.startViewTransition"); + +async function runTest() { + s1.style = "view-transition-name: s1"; + s2.style = "view-transition-name: s2"; + s3.style = "view-transition-name: s3"; + document.startViewTransition(() => { + s1.remove(); + s2.remove(); + s3.remove(); + hidden.style.left = "200px"; + one.style = "view-transition-name: s1"; + two.style = "view-transition-name: s2"; + three.style = "view-transition-name: s3"; + requestAnimationFrame(() => requestAnimationFrame(takeScreenshot)); + }); +} +onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest)); +</script> + + + |