Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / paint / invalidation / spv2 / mix-blend-mode-separate-stacking-context.html
blob7f38ae6fe2f88be5d27f4fa652eeb696a62a369f
1 <!-- Based on fast/repaint/mix-blend-mode-separate-stacking-context.html -->
2 <!DOCTYPE HTML>
3 <html>
4 <head>
5 <style>
6 div {
7 margin: 20px;
8 width: 60px;
9 height: 60px;
10 float: left;
12 </style>
13 <script src="resources/paint-invalidation-test.js" type="text/javascript"></script>
14 <!-- Repaint test to ensure that setting a blend mode dynamically triggers this operation
15 only with the contents of the nearest ancestor stacking context. -->
16 <body onload="runPaintInvalidationTest()">
17 <div style="background: green; position: relative; z-index: -1;">
18 <div id="first" style="mix-blend-mode: normal; background-color: blue;"></div>
19 </div>
20 <div style="background: green; position: relative; z-index: -1;">
21 <div id="second" style="mix-blend-mode: hue; background-color: blue;"></div>
22 </div>
23 <div style="background: green; position: relative; z-index: -1;">
24 <div id="third" style="mix-blend-mode: hue; background-color: blue;"></div>
25 </div>
26 <div id="fourth" style="background: green;">
27 <div style="mix-blend-mode: hue; background-color: blue;"></div>
28 </div>
30 <script>
31 window.expectedPaintInvalidationObjects = [
32 "LayoutBlockFlow (floating) DIV id='second'",
33 "LayoutBlockFlow (relative positioned) (floating) DIV",
34 "LayoutBlockFlow (floating) DIV id='first'",
35 "LayoutBlockFlow (relative positioned) (floating) DIV",
36 "LayoutBlockFlow (floating) DIV id='second'",
37 "LayoutBlockFlow (floating) DIV id='third'",
38 "LayoutBlockFlow (relative positioned) (floating) DIV id='fourth'",
39 "LayoutBlockFlow (floating) DIV",
41 function paintInvalidationTest() {
42 document.getElementById('first').style.mixBlendMode = "multiply";
43 document.getElementById('second').style.mixBlendMode = "normal";
44 document.getElementById('third').style.mixBlendMode = "multiply";
45 document.getElementById('fourth').style.position = "relative";
46 document.getElementById('fourth').style.zIndex = -1;
48 </script>
49 </body>