Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(73)

Side by Side Diff: third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-auto-columns-rows-get-set.html

Issue 2287113004: [css-grid] Implement fit-content track size (Closed)
Patch Set: Patch for landing Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
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 <style> 5 <style>
6 .gridAutoFixedFixed { 6 .gridAutoFixedFixed {
7 grid-auto-rows: 30px; 7 grid-auto-rows: 30px;
8 grid-auto-columns: 50px; 8 grid-auto-columns: 50px;
9 } 9 }
10 10
(...skipping 19 matching lines...) Expand all
30 grid-auto-columns: minmax(10vw, auto); 30 grid-auto-columns: minmax(10vw, auto);
31 } 31 }
32 32
33 .gridAutoMultipleTracks { 33 .gridAutoMultipleTracks {
34 width: 100px; 34 width: 100px;
35 height: 50px; 35 height: 50px;
36 grid-auto-rows: 10px 20px 30px; 36 grid-auto-rows: 10px 20px 30px;
37 grid-auto-columns: 25px 50px 100px; 37 grid-auto-columns: 25px 50px 100px;
38 } 38 }
39 39
40 .gridAutoFitContent {
41 height: 50px;
42 grid-auto-columns: fit-content(30px);
43 grid-auto-rows: fit-content(50%);
44 }
45
40 </style> 46 </style>
41 <script src="../../resources/js-test.js"></script> 47 <script src="../../resources/js-test.js"></script>
42 <script src="resources/grid-definitions-parsing-utils.js"></script> 48 <script src="resources/grid-definitions-parsing-utils.js"></script>
43 </head> 49 </head>
44 <body> 50 <body>
45 <div class="grid gridAutoFixedFixed" id="gridAutoFixedFixed"></div> 51 <div class="grid gridAutoFixedFixed" id="gridAutoFixedFixed"></div>
46 <div class="grid gridAutoMinMax" id="gridAutoMinMax"></div> 52 <div class="grid gridAutoMinMax" id="gridAutoMinMax"></div>
47 <div class="grid gridAutoMinMaxContent" id="gridAutoMinMaxContent"></div> 53 <div class="grid gridAutoMinMaxContent" id="gridAutoMinMaxContent"></div>
48 <div class="grid gridAutoAutoInMinMax" id="gridAutoAutoInMinMax"></div> 54 <div class="grid gridAutoAutoInMinMax" id="gridAutoAutoInMinMax"></div>
49 <div class="grid gridAutoFixedFixed" id="gridAutoFixedFixedWithChildren"> 55 <div class="grid gridAutoFixedFixed" id="gridAutoFixedFixedWithChildren">
50 <div class="sizedToGridArea firstRowFirstColumn"></div> 56 <div class="sizedToGridArea firstRowFirstColumn"></div>
51 </div> 57 </div>
52 <div class="grid gridAutoFixedFixedWithFixedFixed" id="gridAutoFixedFixedWithFix edFixedWithChildren"> 58 <div class="grid gridAutoFixedFixedWithFixedFixed" id="gridAutoFixedFixedWithFix edFixedWithChildren">
53 <div class="sizedToGridArea thirdRowAutoColumn"></div> 59 <div class="sizedToGridArea thirdRowAutoColumn"></div>
54 <div class="sizedToGridArea autoRowThirdColumn"></div> 60 <div class="sizedToGridArea autoRowThirdColumn"></div>
55 </div> 61 </div>
56 <div class="grid gridAutoMultipleTracks" id="gridAutoMultipleTracks"> 62 <div class="grid gridAutoMultipleTracks" id="gridAutoMultipleTracks">
57 <div style="grid-column: 1; grid-row: 1"></div> 63 <div style="grid-column: 1; grid-row: 1"></div>
58 <div style="grid-column: 2; grid-row: 2"></div> 64 <div style="grid-column: 2; grid-row: 2"></div>
59 <div style="grid-column: 3; grid-row: 3"></div> 65 <div style="grid-column: 3; grid-row: 3"></div>
60 <div style="grid-column: 4; grid-row: 4"></div> 66 <div style="grid-column: 4; grid-row: 4"></div>
61 </div> 67 </div>
62 <div class="grid gridAutoMultipleTracks" id="gridAutoMultipleTracksNegativeIndex es"> 68 <div class="grid gridAutoMultipleTracks" id="gridAutoMultipleTracksNegativeIndex es">
63 <div style="grid-column: -2; grid-row: -2"></div> 69 <div style="grid-column: -2; grid-row: -2"></div>
64 <div style="grid-column: -3; grid-row: -3"></div> 70 <div style="grid-column: -3; grid-row: -3"></div>
65 <div style="grid-column: -4; grid-row: -4"></div> 71 <div style="grid-column: -4; grid-row: -4"></div>
66 <div style="grid-column: -5; grid-row: -5"></div> 72 <div style="grid-column: -5; grid-row: -5"></div>
67 </div> 73 </div>
74 <div class="grid gridAutoFitContent" id="gridAutoFitContent"></div>
68 75
69 <script> 76 <script>
70 description('Test that setting and getting grid-auto-columns and grid-auto-rows works as expected'); 77 description('Test that setting and getting grid-auto-columns and grid-auto-rows works as expected');
71 78
72 debug("Test getting grid-auto-columns and grid-auto-rows set through CSS"); 79 debug("Test getting grid-auto-columns and grid-auto-rows set through CSS");
73 testGridAutoDefinitionsValues(document.getElementById("gridAutoFixedFixed"), "30 px", "50px"); 80 testGridAutoDefinitionsValues(document.getElementById("gridAutoFixedFixed"), "30 px", "50px");
74 testGridAutoDefinitionsValues(document.getElementById("gridAutoMinMax"), "minmax (10%, 15px)", "minmax(30%, 100px)"); 81 testGridAutoDefinitionsValues(document.getElementById("gridAutoMinMax"), "minmax (10%, 15px)", "minmax(30%, 100px)");
75 testGridAutoDefinitionsValues(document.getElementById("gridAutoMinMaxContent"), "min-content", "max-content"); 82 testGridAutoDefinitionsValues(document.getElementById("gridAutoMinMaxContent"), "min-content", "max-content");
76 testGridAutoDefinitionsValues(document.getElementById("gridAutoAutoInMinMax"), " minmax(auto, 48px)", "minmax(80px, auto)"); 83 testGridAutoDefinitionsValues(document.getElementById("gridAutoAutoInMinMax"), " minmax(auto, 48px)", "minmax(80px, auto)");
84 testGridAutoDefinitionsValues(document.getElementById("gridAutoFitContent"), "fi t-content(50%)", "fit-content(30px)");
77 85
78 debug(""); 86 debug("");
79 debug("Test that getting grid-template-columns and grid-template-rows set throug h CSS lists every track listed whether implicitly or explicitly created"); 87 debug("Test that getting grid-template-columns and grid-template-rows set throug h CSS lists every track listed whether implicitly or explicitly created");
80 testGridAutoDefinitionsValues(document.getElementById("gridAutoFixedFixedWithChi ldren"), "30px", "50px"); 88 testGridAutoDefinitionsValues(document.getElementById("gridAutoFixedFixedWithChi ldren"), "30px", "50px");
81 testGridDefinitionsValues(document.getElementById("gridAutoFixedFixedWithChildre n"), "50px", "30px"); 89 testGridDefinitionsValues(document.getElementById("gridAutoFixedFixedWithChildre n"), "50px", "30px");
82 testGridAutoDefinitionsValues(document.getElementById("gridAutoFixedFixedWithFix edFixedWithChildren"), "30px", "40px"); 90 testGridAutoDefinitionsValues(document.getElementById("gridAutoFixedFixedWithFix edFixedWithChildren"), "30px", "40px");
83 testGridDefinitionsValues(document.getElementById("gridAutoFixedFixedWithFixedFi xedWithChildren"), "20px 40px 40px", "15px 30px 30px"); 91 testGridDefinitionsValues(document.getElementById("gridAutoFixedFixedWithFixedFi xedWithChildren"), "20px 40px 40px", "15px 30px 30px");
84 testGridDefinitionsValues(document.getElementById("gridAutoMultipleTracks"), "25 px 50px 100px 25px", "10px 20px 30px 10px"); 92 testGridDefinitionsValues(document.getElementById("gridAutoMultipleTracks"), "25 px 50px 100px 25px", "10px 20px 30px 10px");
85 testGridDefinitionsValues(document.getElementById("gridAutoMultipleTracksNegativ eIndexes"), "100px 25px 50px 100px", "30px 10px 20px 30px"); 93 testGridDefinitionsValues(document.getElementById("gridAutoMultipleTracksNegativ eIndexes"), "100px 25px 50px 100px", "30px 10px 20px 30px");
86 94
(...skipping 19 matching lines...) Expand all
106 shouldBeEqualToString("getComputedStyle(element, '').getPropertyValue('grid -auto-columns')", computedAutoCols || autoCols); 114 shouldBeEqualToString("getComputedStyle(element, '').getPropertyValue('grid -auto-columns')", computedAutoCols || autoCols);
107 shouldBeEqualToString("getComputedStyle(element, '').getPropertyValue('grid -auto-rows')", computedAutoRows || autoRows); 115 shouldBeEqualToString("getComputedStyle(element, '').getPropertyValue('grid -auto-rows')", computedAutoRows || autoRows);
108 } 116 }
109 117
110 debug(""); 118 debug("");
111 debug("Test getting and setting grid-auto-columns and grid-auto-rows through JS" ); 119 debug("Test getting and setting grid-auto-columns and grid-auto-rows through JS" );
112 testAutoValues("18em", "66em", "180px", "660px"); 120 testAutoValues("18em", "66em", "180px", "660px");
113 testAutoValues("minmax(min-content, 8vh)", "minmax(10vw, min-content)", "minmax( min-content, 48px)", "minmax(80px, min-content)"); 121 testAutoValues("minmax(min-content, 8vh)", "minmax(10vw, min-content)", "minmax( min-content, 48px)", "minmax(80px, min-content)");
114 testAutoValues("minmax(min-content, max-content)", "minmax(max-content, min-cont ent)"); 122 testAutoValues("minmax(min-content, max-content)", "minmax(max-content, min-cont ent)");
115 testAutoValues("minmax(min-content, 10px) 48px 5%", "auto 30px minmax(10%, 60%)" ); 123 testAutoValues("minmax(min-content, 10px) 48px 5%", "auto 30px minmax(10%, 60%)" );
124 testAutoValues("fit-content(10px) fit-content(30%)", "fit-content(5%) fit-conten t(calc(20px + 2em))", "fit-content(10px) fit-content(30%)", "fit-content(5%) fit -content(40px)");
116 125
117 debug(""); 126 debug("");
118 debug("Test setting grid-auto-columns and grid-auto-rows to bad minmax value thr ough JS"); 127 debug("Test setting grid-auto-columns and grid-auto-rows to bad minmax value thr ough JS");
119 testAutoValues("minmax(10px 20px)", "minmax(10px)", "auto", "auto"); 128 testAutoValues("minmax(10px 20px)", "minmax(10px)", "auto", "auto");
120 testAutoValues("minmax(minmax(10px, 20px), 20px)", "minmax(10px, 20px, 30px)", " auto", "auto"); 129 testAutoValues("minmax(minmax(10px, 20px), 20px)", "minmax(10px, 20px, 30px)", " auto", "auto");
121 testAutoValues("minmax()", "minmax(30px 30% 30em)", "auto", "auto"); 130 testAutoValues("minmax()", "minmax(30px 30% 30em)", "auto", "auto");
122 testAutoValues("none", "none", "auto", "auto"); 131 testAutoValues("none", "none", "auto", "auto");
123 testAutoValues("10px [a] 20px", "[z] auto [y] min-content", "auto", "auto"); 132 testAutoValues("10px [a] 20px", "[z] auto [y] min-content", "auto", "auto");
124 testAutoValues("repeat(2, 10px [a] 20px)", "[z] repeat(auto-fit, 100px)", "auto" , "auto"); 133 testAutoValues("repeat(2, 10px [a] 20px)", "[z] repeat(auto-fit, 100px)", "auto" , "auto");
134 testAutoValues("fit-content(min-content) fit-content(auto)", "fit-content(fit-co ntent(3%)) fit-content(minmax(2px, 30px))", "auto", "auto");
125 135
126 function testInherit() 136 function testInherit()
127 { 137 {
128 var parentElement = document.createElement("div"); 138 var parentElement = document.createElement("div");
129 document.body.appendChild(parentElement); 139 document.body.appendChild(parentElement);
130 parentElement.style.gridAutoColumns = "50px"; 140 parentElement.style.gridAutoColumns = "50px";
131 parentElement.style.gridAutoRows = "101%"; 141 parentElement.style.gridAutoRows = "101%";
132 142
133 element = document.createElement("div"); 143 element = document.createElement("div");
134 parentElement.appendChild(element); 144 parentElement.appendChild(element);
(...skipping 23 matching lines...) Expand all
158 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-auto-rows')", "'auto'"); 168 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-auto-rows')", "'auto'");
159 169
160 document.body.removeChild(element); 170 document.body.removeChild(element);
161 } 171 }
162 debug(""); 172 debug("");
163 debug("Test setting grid-auto-columns and grid-auto-rows to 'initial' through JS "); 173 debug("Test setting grid-auto-columns and grid-auto-rows to 'initial' through JS ");
164 testInitial(); 174 testInitial();
165 </script> 175 </script>
166 </body> 176 </body>
167 </html> 177 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698