<!doctype HTML>
<html class="reftest-wait">
<meta charset="utf8">
<title>Content Visibility: auto subtree becomes hidden in the viewport</title>
<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
<link rel="help" href="https://drafts.csswg.org/css-contain/#content-visibility">
<link rel="match" href="container-ref.html">
<meta name="assert" content="hidden subtree because auto and so stops painting">
<script src="/common/reftest-wait.js"></script>

<style>
#container {
  width: 150px;
  height: 150px;
  background: lightblue;
}
#child {
  width: 50px;
  height: 50px;
  background: lightgreen;
}
.auto { content-visibility: auto; }
.hidden { content-visibility: hidden; }

</style>

<div id=container class=auto>
  Text.
  <div id=child></div>
</div>

<script>

function runTest() {
  document.getElementById("container").classList.remove("auto");
  document.getElementById("container").classList.add("hidden");

  requestAnimationFrame(takeScreenshot);
}

window.onload = requestAnimationFrame(() => {
  requestAnimationFrame(() => {
    requestAnimationFrame(() => {
      runTest();
    });
  });
});

</script>
</html>


