51 lines
No EOL
1.2 KiB
HTML
51 lines
No EOL
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="../resources/intersection-observer-test-utils.js"></script>
|
|
<style>
|
|
html, body {
|
|
margin: 0;
|
|
padding: 0;
|
|
height: 200px;
|
|
width: 100%;
|
|
}
|
|
#parent {
|
|
position: relative;
|
|
height: 200px;
|
|
width: 200px;
|
|
background-color: rgb(250, 221, 221);
|
|
overflow-y: clip;
|
|
overflow-x: visible;
|
|
}
|
|
#child {
|
|
background-color: rgb(208, 250, 208);
|
|
position: absolute;
|
|
left: 100%;
|
|
width: 200px;
|
|
height: 200px;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div id="parent">
|
|
<div id="child"></div>
|
|
</div>
|
|
</body>
|
|
<script>
|
|
const test = async_test("ParentWithOverflowVisibleAndNotVisible");
|
|
const child = document.getElementById("child");
|
|
const observer = new IntersectionObserver((entries) => {
|
|
test.step(() => {
|
|
assert_true(entries[0].isIntersecting);
|
|
assert_equals(entries[0].intersectionRatio, 1.0);
|
|
assert_equals(entries[0].intersectionRect.height, 200);
|
|
assert_equals(entries[0].intersectionRect.width, 200);
|
|
});
|
|
test.done();
|
|
});
|
|
observer.observe(child);
|
|
</script>
|
|
</html> |