wpt / css / cssom-view / elementsFromPoint-invalid-cases.html

Status: PASS | Duration: 66ms | Subtests: 3/3 | Open test on wpt.live | wpt.fyi

Data from commit:
a50cb89 wpt: run reference-named files which are themselves tests (#836) (2026-09-03)

SubtestStatusMessage
The root element is the last element returned for otherwise empty queries within the viewportPASS
The root element is the last element returned for valid queriesPASS
An empty sequence is returned for queries outside the viewportPASS

/css/cssom-view/elementsFromPoint-invalid-cases.html

<!DOCTYPE HTML>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/elementsFromPoint.js"></script>
<style>
html {
    overflow-y: scroll;
    overflow-x: scroll;
}
html, body {
    margin: 0;
    padding: 0;
}
body {
    width: 100%;
    height: 100%;
}
#simpleDiv {
    width: 200px;
    height: 200px;
    background-color: rgba(0,255,0,0.5);
}
#beyondTopLeft {
    position: absolute;
    transform: translate3d(-100px, -100px, 10px);
    left: 0;
    top: 0;
    width: 100px;
    height: 100px;
    background-color: rgba(0,0,0,0.1);
}
</style>
<body>
<div id="beyondTopLeft"></div>
<div id="simpleDiv"></div>
<script>
test(function() {
    assertElementsFromPoint('document', 300, 300, [document.documentElement]);
}, "The root element is the last element returned for otherwise empty queries within the viewport");

test(function() {
    var simpleDiv = document.getElementById('simpleDiv');
    var simpleRect = simpleDiv.getBoundingClientRect();
    var simpleCoords = (simpleRect.right - 1) + ', ' + (simpleRect.bottom - 1);
    assertElementsFromPoint('document', simpleRect.right - 1, simpleRect.bottom - 1,
        [simpleDiv, document.body, document.documentElement]);
}, "The root element is the last element returned for valid queries");

test(function() {
    assertElementsFromPoint('document', window.innerWidth + 1, window.innerHeight + 1, []);
    assertElementsFromPoint('document', -1, -1, []);
    assertElementsFromPoint('document', 1, -1, []);
    assertElementsFromPoint('document', -1, 1, []);
}, "An empty sequence is returned for queries outside the viewport");
</script>
</body>