51 lines
1.3 KiB
HTML
51 lines
1.3 KiB
HTML
<!doctype HTML>
|
|
<html>
|
|
<meta charset="utf8">
|
|
<title>Content Visibility: hit testing (composited child)</title>
|
|
<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
|
|
<link rel="help" href="https://drafts.csswg.org/css-contain/#content-visibility">
|
|
<meta name="assert" content="content-visibility hidden prevents hit-testing in the subtree">
|
|
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
|
|
<style>
|
|
body {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
#outer {
|
|
width: 100px;
|
|
height: 100px;
|
|
background: lightblue;
|
|
|
|
content-visibility: hidden;
|
|
}
|
|
#inner {
|
|
margin: 25px;
|
|
width: 50px;
|
|
height: 50px;
|
|
background lightgreen;
|
|
will-change: transform;
|
|
}
|
|
</style>
|
|
|
|
<body id="body">
|
|
<div id="outer"><div id="inner"></div></div>
|
|
</body>
|
|
|
|
<script>
|
|
async_test((t) => {
|
|
const container = document.getElementById("outer");
|
|
|
|
let target = document.elementFromPoint(50, 50);
|
|
t.step(() => assert_equals(target.id, "outer", "center hits outer"));
|
|
target = document.elementFromPoint(10, 50);
|
|
t.step(() => assert_equals(target.id, "outer", "edge hits outer"));
|
|
target = document.elementFromPoint(100, 50);
|
|
t.step(() => assert_equals(target.id, "body", "elsewhere hits body"));
|
|
t.done();
|
|
});
|
|
|
|
</script>
|
|
</html>
|