<!DOCTYPE HTML>
<html>
<head>
<style>
div {
margin: 20px;
width: 60px;
height: 60px;
float: left;
}
</style>
<script src="resources/text-based-repaint.js" type="text/javascript"></script>
<!-- Repaint test to ensure that setting a blend mode dynamically triggers this operation
only with the contents of the nearest ancestor stacking context. -->
<body onload="runRepaintAndPixelTest()">
<div style="background: green; position: relative; z-index: -1;">
<div id="first" style="mix-blend-mode: normal; background-color: blue;"></div>
</div>
<div style="background: green; position: relative; z-index: -1;">
<div id="second" style="mix-blend-mode: hue; background-color: blue;"></div>
</div>
<div style="background: green; position: relative; z-index: -1;">
<div id="third" style="mix-blend-mode: hue; background-color: blue;"></div>
</div>
<div id="fourth" style="background: green;">
<div style="mix-blend-mode: hue; background-color: blue;"></div>
</div>
<script>
function repaintTest() {
document.getElementById('first').style.mixBlendMode = "multiply";
document.getElementById('second').style.mixBlendMode = "normal";
document.getElementById('third').style.mixBlendMode = "multiply";
document.getElementById('fourth').style.position = "relative";
document.getElementById('fourth').style.zIndex = -1;
}
</script>
</body>