diff options
Diffstat (limited to 'testing/web-platform/tests/css/css-view-transitions/old-content-container-writing-modes.html')
-rw-r--r-- | testing/web-platform/tests/css/css-view-transitions/old-content-container-writing-modes.html | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-view-transitions/old-content-container-writing-modes.html b/testing/web-platform/tests/css/css-view-transitions/old-content-container-writing-modes.html new file mode 100644 index 0000000000..9896c27152 --- /dev/null +++ b/testing/web-platform/tests/css/css-view-transitions/old-content-container-writing-modes.html @@ -0,0 +1,94 @@ +<!DOCTYPE html> +<html class=reftest-wait> +<title>View transitions: container of 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="old-content-container-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; +} +#target1, #target2, #target3 { + background: red; + position: absolute; + top: 50px; + left: 50px; + width: 100px; + height: 500px; + contain: paint; +} +#one { view-transition-name: s1; } +#two { view-transition-name: s2; } +#three { view-transition-name: s3; } + +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-delay: 300s; + animation-fill-mode: both; +} + +html::view-transition-new(s1), +html::view-transition-new(s2), +html::view-transition-new(s3) { animation: unset; opacity: 0; } + +html::view-transition-old(s1), +html::view-transition-old(s2), +html::view-transition-old(s3) { animation: unset; opacity: 1; } + +/* 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=target1>Should not be visible</div> +<div id=target2>Should not be visible</div> +<div id=target3>Should not be visible</div> +<div class=tb><div id=one class=shared>T</div></div> +<div class=lr><div id=two class=shared>T</div></div> +<div class=rl><div id=three class=shared>T</div></div> + +<script> +failIfNot(document.startViewTransition, "Missing document.startViewTransition"); + +async function runTest() { + document.startViewTransition(() => { + one.remove(); + two.remove(); + three.remove(); + hidden.style.left = "200px"; + target1.style.viewTransitionName = "s1"; + target2.style.viewTransitionName = "s2"; + target3.style.viewTransitionName = "s3"; + requestAnimationFrame(() => requestAnimationFrame(takeScreenshot)); + }); +} +onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest)); +</script> + + + |