content-visibility-044.html (1099B)
1 <!doctype HTML> 2 <html> 3 <meta charset="utf8"> 4 <title>Content Visibility: slot moved after container is hidden</title> 5 <link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org"> 6 <link rel="help" href="https://drafts.csswg.org/css-contain/#content-visibility"> 7 <meta name="assert" content="ensure that hidden slotted element can be updated"> 8 9 <script src="/resources/testharness.js"></script> 10 <script src="/resources/testharnessreport.js"></script> 11 12 <body style="margin: 0"> 13 14 <div id=host> 15 <input id=slotted style="margin: 0"> 16 <script> 17 18 async_test((t) => { 19 let container = document.createElement("div"); 20 container.innerHTML = "<slot></slot>"; 21 let shadowRoot = host.attachShadow({ mode: "open" }); 22 shadowRoot.innerHTML = "<style>.hidden { content-visibility: hidden }</style>"; 23 shadowRoot.appendChild(container); 24 25 t.step(async () => { 26 container.classList.add("hidden"); 27 requestAnimationFrame(() => { 28 assert_equals(slotted.offsetTop, 0); 29 container.innerHTML = "<div style='height: 20px;'></div><slot></slot>"; 30 t.done(); 31 }); 32 }); 33 }); 34 </script>