<!doctype html>
<html class="reftest-wait">
<title>Selectors: :hover style cleared on ancestor when hovered element is removed.</title>
<link rel="help" href="https://drafts.csswg.org/selectors/#the-hover-pseudo">
<link rel="match" href="remove-hovered-element-ref.html">
<script src="/common/reftest-wait.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<style>
div {
width: 100px;
height: 100px;
background: green;
}
#outer:hover {
background-color: red;
}
#relative {
position: relative;
left: 150px;
}
</style>
<p>Clicking the right square should make the left one go green.</p>
<div id="outer">
<div id="relative"><div id="inner">Click me</div></div>
</div>
<script>
inner.addEventListener("click", () => {
relative.style.display = "none";
// force layout box removal
document.body.offsetTop;
relative.remove();
takeScreenshot();
});
// Hover #inner and click.
var actions = new test_driver.Actions();
actions.pointerMove(0, 0, {origin: inner}).pointerDown().pointerUp().send();
</script>