diff options
Diffstat (limited to 'testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-018.html')
-rw-r--r-- | testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-018.html | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-018.html b/testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-018.html new file mode 100644 index 0000000000..15fe7f769d --- /dev/null +++ b/testing/web-platform/tests/css/css-contain/content-visibility/content-visibility-018.html @@ -0,0 +1,52 @@ +<!doctype HTML> +<html> +<meta charset="utf8"> +<title>Content Visibility: hit testing (composited with a 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; + will-change: transform; +} +#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> |