Commit d44a7af3 authored by Vladimir Levin's avatar Vladimir Levin Committed by Commit Bot

ContentVisibility: Add positioned children tests.

This patch modifies one test to ensure that positioned elements are
properly hidden, and adds a new one that ensures that positioned
elements start painting properly when unhidden.

R=chrishtr@chromium.org

Fixed: 1090373
Change-Id: I7801f429de5c6752f681461b692a9f044fbf3ec0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2227112
Commit-Queue: vmpstr <vmpstr@chromium.org>
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: default avatarChris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#774320}
parent b0ef5246
<!doctype HTML>
<html>
<meta charset="utf8">
<title>CSS Content Visibility: container with child and text (reference)</title>
<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
<link rel="help" href="https://github.com/WICG/display-locking">
<style>
#container {
width: 150px;
height: 150px;
background: lightblue;
contain: layout;
}
#child {
width: 50px;
height: 50px;
background: lightgreen;
}
.abspos { position: absolute; }
.relpos { position: relative; }
.fixedpos { position: fixed; }
.start { top: 0; left: 0; }
.mid { top: 10px; left: 10px; }
.end { bottom: 0; right: 0; }
.zindex { z-index: 1; }
.small { width: 10px; height: 10px; background: blue; }
.medium { width: 20px; height: 20px; background: green; }
.large { width: 30px; height: 30px; background: pink; }
</style>
<div id=container>
Text.
<div id=child></div>
<span>inline child</span>
<div class="abspos start small"></div>
<div class="relpos mid medium"></div>
<div class="fixedpos end large"></div>
<div class=relpos>
<div class="abspos mid small zindex"></div>
</div>
</div>
......@@ -19,11 +19,27 @@
height: 50px;
background: lightgreen;
}
.abspos { position: absolute; }
.relpos { position: relative; }
.fixedpos { position: fixed; }
.start { top: 0; left: 0; }
.mid { top: 10px; left: 10px; }
.end { bottom: 0; right: 0; }
.zindex { z-index: 1; }
.small { width: 10px; height: 10px; background: blue; }
.medium { width: 20px; height: 20px; background: green; }
.large { width: 30px; height: 30px; background: pink; }
</style>
<div id=container>
Text.
<div id=child></div>
<span>inline child</span>
<div class="abspos start small"></div>
<div class="relpos mid medium"></div>
<div class="fixedpos end large"></div>
<div class=relpos>
<div class="abspos mid small zindex"></div>
</div>
</div>
</html>
<!doctype HTML>
<html class="reftest-wait">
<meta charset="utf8">
<title>CSS Content Visibility: hidden starts painting when removed</title>
<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
<link rel="help" href="https://github.com/WICG/display-locking">
<link rel="match" href="container-with-pos-children-ref.html">
<meta name="assert" content="content-visibility subtrees start painting when hidden is removed">
<script src="/common/reftest-wait.js"></script>
<style>
#container {
width: 150px;
height: 150px;
background: lightblue;
contain: layout;
}
.hidden {
content-visibility: hidden;
}
#child {
width: 50px;
height: 50px;
background: lightgreen;
}
.abspos { position: absolute; }
.relpos { position: relative; }
.fixedpos { position: fixed; }
.start { top: 0; left: 0; }
.mid { top: 10px; left: 10px; }
.end { bottom: 0; right: 0; }
.zindex { z-index: 1; }
.small { width: 10px; height: 10px; background: blue; }
.medium { width: 20px; height: 20px; background: green; }
.large { width: 30px; height: 30px; background: pink; }
</style>
<div id=container class=hidden>
Text.
<div id=child></div>
<span>inline child</span>
<div class="abspos start small"></div>
<div class="relpos mid medium"></div>
<div class="fixedpos end large"></div>
<div class=relpos>
<div class="abspos mid small zindex"></div>
</div>
</div>
<script>
function runTest() {
const container = document.getElementById("container");
container.classList.remove("hidden");
requestAnimationFrame(takeScreenshot);
}
window.onload = runTest;
</script>
</html>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment