<!DOCTYPE html>
<html>
<head>
<style>
.hitregion {
  width: 100px;
  height: 100px;
  background-color: red;
}
.hitregion:after {
  content: "";
  border: 40px solid;
  outline: 10px solid;
  position: absolute;
  width: 0;
  height: 0;
  margin-left: 140px;
  margin-top: 10px;
}
.hitregion:hover {
  background-color: green; /* Changes the left box's color. */
}
.hitregion:hover:after {
  color: green; /* Changes the right box's color. */
}
</style>
<script type="text/javascript">
        if (window.testRunner)
            testRunner.waitUntilDone();
        function runTest()
        {
            eventSender.mouseMoveTo(50, 50);
            eventSender.mouseDown();
            eventSender.mouseUp();
            if (window.testRunner)
                testRunner.notifyDone();
        }
</script>
</head>
<body onload="setTimeout(runTest, 0);">
<!--
    REGRESSION: :hover doesn't work on :after content with borders or outlines.
    To test this bug outside DRT, hover on the square below.
    This test passes if there are two green squares.
-->
<div class="hitregion"></div>
</body>
</html>
