OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <link href="resources/grid.css" rel="stylesheet"> | 4 <link href="resources/grid.css" rel="stylesheet"> |
5 <script src="../../resources/check-layout.js"></script> | 5 <script src="../../resources/check-layout.js"></script> |
6 <script type="text/javascript"> | 6 <script type="text/javascript"> |
7 | 7 |
8 function testLayout(gridDefinitions, itemsDefinitions) | 8 function testLayout(gridDefinitions, itemsDefinitions) |
9 { | 9 { |
10 var gridContainer = document.getElementById("gridContainer"); | 10 var gridContainer = document.getElementById("gridContainer"); |
11 var gridElement = document.createElement("div"); | 11 var gridElement = document.createElement("div"); |
12 gridElement.className = "grid"; | 12 gridElement.className = "grid"; |
13 gridElement.style.gridAutoFlow = "stack"; | 13 gridElement.style.gridAutoFlow = "dense"; |
14 | 14 |
15 for (var key in gridDefinitions) { | 15 for (var key in gridDefinitions) { |
16 if (key == "rows") | 16 if (key == "rows") |
17 gridElement.style.gridTemplateRows = gridDefinitions[key]; | 17 gridElement.style.gridTemplateRows = gridDefinitions[key]; |
18 else if (key == "columns") | 18 else if (key == "columns") |
19 gridElement.style.gridTemplateColumns = gridDefinitions[key]; | 19 gridElement.style.gridTemplateColumns = gridDefinitions[key]; |
20 else | 20 else |
21 gridElement.style.gridTemplateAreas = gridDefinitions[key]; | 21 gridElement.style.gridTemplateAreas = gridDefinitions[key]; |
22 } | 22 } |
23 | 23 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 var columnNamedLineBeforeArea = '(a-start c-start) 50px (d-start) 100px 200p
x'; | 55 var columnNamedLineBeforeArea = '(a-start c-start) 50px (d-start) 100px 200p
x'; |
56 var rowNamedLineBeforeArea = '(c-start) 50px (d-start) 100px 200px'; | 56 var rowNamedLineBeforeArea = '(c-start) 50px (d-start) 100px 200px'; |
57 var columnRepeatedNames = '(d-start) 50px (d-start) 100px (d-start) 200px'; | 57 var columnRepeatedNames = '(d-start) 50px (d-start) 100px (d-start) 200px'; |
58 var rowRepeatedNames = '50px (c-end) 100px (c-end) 200px (c-end)'; | 58 var rowRepeatedNames = '50px (c-end) 100px (c-end) 200px (c-end)'; |
59 var columnNoNames = '50px 100px 200px'; | 59 var columnNoNames = '50px 100px 200px'; |
60 var rowNoNames = '50px 100px 200px'; | 60 var rowNoNames = '50px 100px 200px'; |
61 | 61 |
62 // Check grid area resolution. | 62 // Check grid area resolution. |
63 var gridAreasItems = [ { 'column': 'd', 'x': '150', 'y': '0', 'width': '200'
, 'height': '50' }, | 63 var gridAreasItems = [ { 'column': 'd', 'x': '150', 'y': '0', 'width': '200'
, 'height': '50' }, |
64 { 'column': 'c', 'x': '0', 'y': '0', 'width': '50', '
height': '50' }, | 64 { 'column': 'c', 'x': '0', 'y': '0', 'width': '50', '
height': '50' }, |
65 » » » { 'column': 'a', 'x': '50', 'y': '0', 'width': '300',
'height': '50' }]; | 65 » » » { 'column': 'a', 'x': '50', 'y': '50', 'width': '300'
, 'height': '100' }]; |
66 | 66 |
67 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaOne }, gridAreasItems); | 67 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaOne }, gridAreasItems); |
68 testLayout({ 'areas': templateAreaOne, 'columns': columnNoNames, 'rows': row
NoNames }, gridAreasItems); | 68 testLayout({ 'areas': templateAreaOne, 'columns': columnNoNames, 'rows': row
NoNames }, gridAreasItems); |
69 testLayout({ 'columns': columnNoNames, 'areas': templateAreaOne, 'rows': row
NoNames }, gridAreasItems); | 69 testLayout({ 'columns': columnNoNames, 'areas': templateAreaOne, 'rows': row
NoNames }, gridAreasItems); |
70 | 70 |
71 var gridAreasItemsTwo = [ { 'column': 'd', 'x': '50', 'y': '0', 'width': '30
0', 'height': '50' }, | 71 var gridAreasItemsTwo = [ { 'column': 'd', 'x': '50', 'y': '0', 'width': '30
0', 'height': '50' }, |
72 » » » { 'column': 'c', 'x': '150', 'y': '0', 'width': '2
00', 'height': '50' }, | 72 » » » { 'column': 'c', 'x': '150', 'y': '50', 'width': '
200', 'height': '100' }, |
73 { 'column': 'a', 'x': '0', 'y': '0', 'width': '50'
, 'height': '50' }]; | 73 { 'column': 'a', 'x': '0', 'y': '0', 'width': '50'
, 'height': '50' }]; |
74 | 74 |
75 testLayout({ 'areas': templateAreaTwo, 'areas': templateAreaOne, 'columns':
columnNoNames, 'rows': rowNoNames }, gridAreasItems); | 75 testLayout({ 'areas': templateAreaTwo, 'areas': templateAreaOne, 'columns':
columnNoNames, 'rows': rowNoNames }, gridAreasItems); |
76 testLayout({ 'areas': templateAreaOne, 'areas': templateAreaTwo, 'columns':
columnNoNames, 'rows': rowNoNames }, gridAreasItemsTwo); | 76 testLayout({ 'areas': templateAreaOne, 'areas': templateAreaTwo, 'columns':
columnNoNames, 'rows': rowNoNames }, gridAreasItemsTwo); |
77 testLayout({ 'areas': templateAreaTwo, 'columns': columnNoNames, 'rows': row
NoNames, 'areas': templateAreaOne, }, gridAreasItems); | 77 testLayout({ 'areas': templateAreaTwo, 'columns': columnNoNames, 'rows': row
NoNames, 'areas': templateAreaOne, }, gridAreasItems); |
78 testLayout({ 'areas': templateAreaOne, 'columns': columnNoNames, 'rows': row
NoNames, 'areas': templateAreaTwo, }, gridAreasItemsTwo); | 78 testLayout({ 'areas': templateAreaOne, 'columns': columnNoNames, 'rows': row
NoNames, 'areas': templateAreaTwo, }, gridAreasItemsTwo); |
79 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaTwo, 'areas': templateAreaOne }, gridAreasItems); | 79 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaTwo, 'areas': templateAreaOne }, gridAreasItems); |
80 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaOne, 'areas': templateAreaTwo }, gridAreasItemsTwo); | 80 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaOne, 'areas': templateAreaTwo }, gridAreasItemsTwo); |
81 | 81 |
82 // Check grid implicit named grid lines resolution. | 82 // Check grid implicit named grid lines resolution. |
(...skipping 10 matching lines...) Expand all Loading... |
93 { 'column': 'd-start', 'row': 'c-start', 'x': '
50', 'y': '150', 'width': '100', 'height': '200' }]; | 93 { 'column': 'd-start', 'row': 'c-start', 'x': '
50', 'y': '150', 'width': '100', 'height': '200' }]; |
94 | 94 |
95 testLayout({ 'areas': templateAreaTwo, 'areas': templateAreaOne, 'columns':
columnNoNames, 'rows': rowNoNames }, implicitNamesItems); | 95 testLayout({ 'areas': templateAreaTwo, 'areas': templateAreaOne, 'columns':
columnNoNames, 'rows': rowNoNames }, implicitNamesItems); |
96 testLayout({ 'areas': templateAreaOne, 'areas': templateAreaTwo, 'columns':
columnNoNames, 'rows': rowNoNames }, implicitNamesItemsTwo); | 96 testLayout({ 'areas': templateAreaOne, 'areas': templateAreaTwo, 'columns':
columnNoNames, 'rows': rowNoNames }, implicitNamesItemsTwo); |
97 testLayout({ 'areas': templateAreaTwo, 'columns': columnNoNames, 'rows': row
NoNames, 'areas': templateAreaOne }, implicitNamesItems); | 97 testLayout({ 'areas': templateAreaTwo, 'columns': columnNoNames, 'rows': row
NoNames, 'areas': templateAreaOne }, implicitNamesItems); |
98 testLayout({ 'areas': templateAreaOne, 'columns': columnNoNames, 'rows': row
NoNames, 'areas': templateAreaTwo }, implicitNamesItemsTwo); | 98 testLayout({ 'areas': templateAreaOne, 'columns': columnNoNames, 'rows': row
NoNames, 'areas': templateAreaTwo }, implicitNamesItemsTwo); |
99 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaTwo, 'areas': templateAreaOne }, implicitNamesItems); | 99 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaTwo, 'areas': templateAreaOne }, implicitNamesItems); |
100 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaOne, 'areas': templateAreaTwo }, implicitNamesItemsTwo); | 100 testLayout({ 'columns': columnNoNames, 'rows': rowNoNames, 'areas': template
AreaOne, 'areas': templateAreaTwo }, implicitNamesItemsTwo); |
101 | 101 |
102 // Check resolution when named lines are defined before the grid area. | 102 // Check resolution when named lines are defined before the grid area. |
103 var itemsBeforeArea = [ { 'column': 'd', 'x': '50', 'y': '0', 'width': '300'
, 'height': '50' }, | 103 var itemsBeforeArea = [ { 'column': 'd', 'x': '50', 'y': '150', 'width': '30
0', 'height': '200' }, |
104 » » » { 'row': 'c', 'x': '0', 'y': '0', 'width': '50', 'he
ight': '150'}, | 104 » » » { 'row': 'c', 'x': '50', 'y': '0', 'width': '100', '
height': '150'}, |
105 » » » { 'column': 'd-start', 'x': '50', 'y': '0', 'width':
'100', 'height': '50' }, | 105 » » » { 'column': 'd-start', 'x': '50', 'y': '350', 'width
': '100', 'height': '0' }, |
106 { 'column': 'a-start', 'row': 'd', 'x': '0', 'y': '5
0', 'width': '50', 'height': '300' } ]; | 106 { 'column': 'a-start', 'row': 'd', 'x': '0', 'y': '5
0', 'width': '50', 'height': '300' } ]; |
107 | 107 |
108 testLayout({ 'columns': columnNamedLineBeforeArea, 'rows': rowNamedLineBefor
eArea, 'areas': templateAreaOne }, itemsBeforeArea); | 108 testLayout({ 'columns': columnNamedLineBeforeArea, 'rows': rowNamedLineBefor
eArea, 'areas': templateAreaOne }, itemsBeforeArea); |
109 testLayout({ 'areas': templateAreaOne, 'columns': columnNamedLineBeforeArea,
'rows': rowNamedLineBeforeArea }, itemsBeforeArea); | 109 testLayout({ 'areas': templateAreaOne, 'columns': columnNamedLineBeforeArea,
'rows': rowNamedLineBeforeArea }, itemsBeforeArea); |
110 testLayout({ 'columns': columnNamedLineBeforeArea, 'areas': templateAreaOne,
'rows': rowNamedLineBeforeArea }, itemsBeforeArea); | 110 testLayout({ 'columns': columnNamedLineBeforeArea, 'areas': templateAreaOne,
'rows': rowNamedLineBeforeArea }, itemsBeforeArea); |
111 | 111 |
112 var itemsBeforeAreaTwo = [ { 'column': 'd', 'x': '50', 'y': '0', 'width': '3
00', 'height': '50' }, | 112 var itemsBeforeAreaTwo = [ { 'column': 'd', 'x': '50', 'y': '350', 'width':
'300', 'height': '0' }, |
113 » » » { 'row': 'c', 'x': '0', 'y': '0', 'width': '50',
'height': '350'}, | 113 » » » { 'row': 'c', 'x': '50', 'y': '0', 'width': '100'
, 'height': '350'}, |
114 » » » { 'column': 'd-start', 'x': '50', 'y': '0', 'widt
h': '100', 'height': '50' }, | 114 » » » { 'column': 'd-start', 'x': '50', 'y': '350', 'wi
dth': '100', 'height': '0' }, |
115 { 'column': 'a-start', 'row': 'd', 'x': '0', 'y':
'0', 'width': '50', 'height': '150' } ]; | 115 { 'column': 'a-start', 'row': 'd', 'x': '0', 'y':
'0', 'width': '50', 'height': '150' } ]; |
116 | 116 |
117 testLayout({ 'areas': templateAreaTwo, 'areas': templateAreaOne, 'columns':
columnNamedLineBeforeArea, 'rows': rowNamedLineBeforeArea }, itemsBeforeArea); | 117 testLayout({ 'areas': templateAreaTwo, 'areas': templateAreaOne, 'columns':
columnNamedLineBeforeArea, 'rows': rowNamedLineBeforeArea }, itemsBeforeArea); |
118 testLayout({ 'areas': templateAreaOne, 'areas': templateAreaTwo, 'columns':
columnNamedLineBeforeArea, 'rows': rowNamedLineBeforeArea }, itemsBeforeAreaTwo)
; | 118 testLayout({ 'areas': templateAreaOne, 'areas': templateAreaTwo, 'columns':
columnNamedLineBeforeArea, 'rows': rowNamedLineBeforeArea }, itemsBeforeAreaTwo)
; |
119 testLayout({ 'areas': templateAreaTwo, 'columns': columnNamedLineBeforeArea,
'rows': rowNamedLineBeforeArea, 'areas': templateAreaOne }, itemsBeforeArea); | 119 testLayout({ 'areas': templateAreaTwo, 'columns': columnNamedLineBeforeArea,
'rows': rowNamedLineBeforeArea, 'areas': templateAreaOne }, itemsBeforeArea); |
120 testLayout({ 'areas': templateAreaOne, 'columns': columnNamedLineBeforeArea,
'rows': rowNamedLineBeforeArea, 'areas': templateAreaTwo }, itemsBeforeAreaTwo)
; | 120 testLayout({ 'areas': templateAreaOne, 'columns': columnNamedLineBeforeArea,
'rows': rowNamedLineBeforeArea, 'areas': templateAreaTwo }, itemsBeforeAreaTwo)
; |
121 testLayout({ 'columns': columnNamedLineBeforeArea, 'rows': rowNamedLineBefor
eArea, 'areas': templateAreaTwo, 'areas': templateAreaOne }, itemsBeforeArea); | 121 testLayout({ 'columns': columnNamedLineBeforeArea, 'rows': rowNamedLineBefor
eArea, 'areas': templateAreaTwo, 'areas': templateAreaOne }, itemsBeforeArea); |
122 testLayout({ 'columns': columnNamedLineBeforeArea, 'rows': rowNamedLineBefor
eArea, 'areas': templateAreaOne, 'areas': templateAreaTwo }, itemsBeforeAreaTwo)
; | 122 testLayout({ 'columns': columnNamedLineBeforeArea, 'rows': rowNamedLineBefor
eArea, 'areas': templateAreaOne, 'areas': templateAreaTwo }, itemsBeforeAreaTwo)
; |
123 | 123 |
124 // Check resolution when named lines are defined multiple times. | 124 // Check resolution when named lines are defined multiple times. |
(...skipping 22 matching lines...) Expand all Loading... |
147 </head> | 147 </head> |
148 <body> | 148 <body> |
149 <div>This test checks we properly recompute the resolution of named grid lines a
nd named grid areas when we change the grid positioning properties.</div> | 149 <div>This test checks we properly recompute the resolution of named grid lines a
nd named grid areas when we change the grid positioning properties.</div> |
150 | 150 |
151 <div id="gridContainer" style="position: relative"></div> | 151 <div id="gridContainer" style="position: relative"></div> |
152 | 152 |
153 <div id="test-output"></div> | 153 <div id="test-output"></div> |
154 | 154 |
155 </body> | 155 </body> |
156 </html> | 156 </html> |
OLD | NEW |