OLD | NEW |
| (Empty) |
1 <!doctype html> | |
2 <html> | |
3 <head> | |
4 <script src="../../../resources/js-test.js"></script> | |
5 <script src="resources/shadow-dom.js"></script> | |
6 <style> | |
7 div::part(header) { | |
8 background-color: green; | |
9 } | |
10 | |
11 div::part(-webkit-header) { | |
12 background-color: red; | |
13 } | |
14 </style> | |
15 </head> | |
16 <body class='mytheme'> | |
17 <div> | |
18 <div id='sandbox'></div> | |
19 </div> | |
20 <pre id='console'></pre> | |
21 <script> | |
22 description('Test whether ::part matches elements whose part attributes have the
same as ::part\'s argument in shadow trees.'); | |
23 | |
24 var sandbox = document.getElementById('sandbox'); | |
25 | |
26 function backgroundColorOf(selector) { | |
27 return window.getComputedStyle(getNodeInTreeOfTrees(selector)).backgroundCol
or; | |
28 } | |
29 | |
30 function backgroundColorShouldBe(selector, expected) { | |
31 shouldBeEqualToString('backgroundColorOf(\'' + selector + '\')', expected); | |
32 } | |
33 | |
34 function cleanUp() { | |
35 sandbox.innerHTML = ''; | |
36 } | |
37 | |
38 sandbox.appendChild( | |
39 createDOM('div', {'id': 'host'}, | |
40 createShadowRoot( | |
41 createDOM('div', {'id': 'target', 'part': 'header'}, | |
42 document.createTextNode('Hello'))))); | |
43 | |
44 backgroundColorShouldBe('host/target', 'rgb(0, 128, 0)'); | |
45 | |
46 cleanUp(); | |
47 | |
48 sandbox.appendChild( | |
49 createDOM('div', {'id': 'host1'}, | |
50 createShadowRoot( | |
51 createDOM('div', {'id': 'host2'}, | |
52 createShadowRoot( | |
53 createDOM('div', {'id': 'target', 'part': 'header'}, | |
54 document.createTextNode('Hello'))))))); | |
55 | |
56 backgroundColorShouldBe('host1/host2/target', 'rgba(0, 0, 0, 0)'); | |
57 | |
58 cleanUp(); | |
59 | |
60 sandbox.appendChild( | |
61 createDOM('div', {'id': 'host'}, | |
62 createShadowRoot( | |
63 createDOM('div', {'id': 'target', 'part': '-webkit-header'}, | |
64 document.createTextNode('Hello'))))); | |
65 | |
66 backgroundColorShouldBe('host/target', 'rgba(0, 0, 0, 0)'); | |
67 document.body.offsetLeft; // should finish layout or style recalc here for a nex
t test. | |
68 | |
69 getNodeInTreeOfTrees('host/target').setAttribute('part', 'header'); | |
70 | |
71 backgroundColorShouldBe('host/target', 'rgb(0, 128, 0)'); | |
72 | |
73 cleanUp(); | |
74 </script> | |
75 </body> | |
OLD | NEW |