inline-child-with-overflow-shadow.html (1498B)
1 <!DOCTYPE html> 2 <html class=reftest-wait> 3 <title>View transitions: inline child with overflowing shadow</title> 4 <link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/"> 5 <link rel="match" href="inline-child-with-overflow-shadow-ref.html"> 6 <script src="/common/reftest-wait.js"></script> 7 <style> 8 :root { view-transition-name: none; } 9 ::view-transition { background: rebeccapurple; } 10 body { 11 margin: 0; 12 } 13 14 .target { 15 width: 100px; 16 height: 200px; 17 position: absolute; 18 top: 100px; 19 left: 100px; 20 view-transition-name: target; 21 } 22 23 .child { 24 background: green; 25 font-size: 100px; 26 box-shadow: -20px -20px yellow; 27 } 28 29 html::view-transition-group(target) { 30 animation-play-state: paused; 31 } 32 html::view-transition-old(target), 33 html::view-transition-new(target) { 34 animation: unset; 35 opacity: 1; 36 } 37 38 html::view-transition-old(target) { 39 opacity: 0; 40 } 41 42 /* None of these should apply, so make everything red if it does */ 43 html::view-transition-group(root) { animation: unset; opacity: 1; background: red; } 44 html::view-transition-image-pair(root) { visibility: hidden } 45 </style> 46 47 <div class=target> 48 <span class=child> </span> 49 </div> 50 51 <script> 52 failIfNot(document.startViewTransition, "Missing document.startViewTransition"); 53 54 async function runTest() { 55 document.startViewTransition(() => 56 requestAnimationFrame(() => requestAnimationFrame(takeScreenshot))); 57 } 58 onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest)); 59 </script>