grid-repeat-auto-fill-fit-006-ref.html (6188B)
1 <!DOCTYPE HTML> 2 <!-- 3 Any copyright is dedicated to the Public Domain. 4 http://creativecommons.org/publicdomain/zero/1.0/ 5 --> 6 <html><head> 7 <meta charset="utf-8"> 8 <title>Reference: repeat(auto-fit) with grid-aligned abs.pos.</title> 9 <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1118820"> 10 <style type="text/css"> 11 html,body { 12 color:black; background-color:white; font-size:16px; padding:0; margin:0; 13 } 14 15 .grid { 16 display: grid; 17 position: relative; 18 border: 1px solid; 19 grid-auto-rows: 30px; 20 grid-template-columns: [a] repeat(auto-fit, [b] 20px [c]) [d] 20px; 21 grid-gap: 2px; 22 width: 160px; 23 height: 30px; 24 } 25 26 .c1 { width: 160px; } 27 .c2 { width: 150px; } 28 .c3 { width: 140px; } 29 .p1 { padding-left:5px; } 30 31 .t2 { grid-template-columns: [a] repeat(auto-fit, [b] 20px [c]) [d]; } 32 33 x { 34 width: 18px; 35 border:1px solid; 36 background: grey; 37 } 38 a { 39 position: absolute; 40 left:0; top:0; height:3px; right:0; 41 background: cyan; 42 grid-column: -1 / auto; 43 } 44 b { 45 position: absolute; 46 left:0; bottom:0; height:3px; right:0; 47 background: brown; 48 grid-column: auto / -1; 49 } 50 c { 51 position: absolute; 52 left:0; bottom:5px; height:3px; right:0; 53 background: pink; 54 grid-column: 6 / auto; 55 } 56 d { 57 position: absolute; 58 left:0; bottom:10px; height:3px; right:0; 59 background: silver; 60 grid-column: 3 / -2; 61 } 62 e { 63 position: absolute; 64 left:0; bottom:15px; height:3px; right:0; 65 background: magenta; 66 grid-column: 3 / -1; 67 } 68 f { 69 position: absolute; 70 left:0; bottom:20px; height:3px; right:0; 71 background: orange; 72 grid-column: auto / -2; 73 } 74 75 x:first-child { 76 background: lime; 77 } 78 x:last-child { 79 background: blue; 80 } 81 82 .t1 x:last-child { 83 grid-column-end:-1; 84 } 85 86 float { float:left; margin-right:20px; } 87 88 .x5 { grid-template-columns: repeat(5,20px); } 89 .x4 { grid-template-columns: repeat(4,20px); } 90 .x3 { grid-template-columns: repeat(3,20px); } 91 .x2 { grid-template-columns: repeat(2,20px); } 92 .x1 { grid-template-columns: repeat(1,20px); } 93 .x0 { grid-template-columns: none; } 94 95 .c1.t1.x5 a { grid-column:5/auto; } 96 .c1.t1.x4 a { grid-column:4/auto; } 97 .c1.t1.x3 a { grid-column:3/auto; } 98 .c1.t1.x2 a { grid-column:2/auto; } 99 .c1.t1.x1 a { grid-column:1/auto; } 100 .c2.t1.x0 a { grid-column:2/auto; } 101 102 .c1.t1.x5 c { grid-column:-2/auto; } 103 .c2.t1.x5 c,.c3.t1.x5 c { grid-column:5/6; } 104 105 .c1.t1.x4 c { grid-column:4/auto; } 106 .c2.t1.x4 c,.c3.t1.x4 c { grid-column:-2/-1; } 107 .t2.x4 c { grid-column:-1/auto; } 108 109 .c1.t1.x3 c, .c1.t1.x2 c, .c1.t1.x1 c { grid-column:-2/auto; } 110 .c2.t1.x3 c, .c3.t1.x3 c, .c2.t1.x2 c, .c3.t1.x2 c, .c2.t1.x1 c, .c3.t1.x1 c { grid-column:-2/-1; } 111 .t2.x3 c, .t2.x2 c, .t2.x1 c { grid-column:-1/auto; } 112 113 .t2 f { grid-column:auto/-1; } 114 115 .c1.t1.x5 e, .c1.t1.x4 e, .c2.t1.x2 e, .c3.t1.x2 e { grid-column:3/-2; } 116 .c1.t1.x3 e ,.c1.t1.x2 e { grid-column:-2/auto; } 117 .c1.t1.x1 e { grid-column:1/auto; } 118 .c2.t1.x1 e,.c3.t1.x1 e { grid-column:1/2; } 119 120 .t2.x5 d, .t2.x4 d { grid-column:3/-1; } 121 .t1.x3 d, .t1.x2 d { grid-column:-2/auto; } 122 .t2.x2 d, .t2.x1 d { grid-column:-1/auto; } 123 .t2.x0 d, .t2.x0 c { grid-column:1/auto; } 124 125 .c1.t1 b { grid-column:auto/-2; } 126 127 </style> 128 </head> 129 <body> 130 131 <float> 132 <div class="grid c1 t1 x5"><x></x><x></x><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 133 <div class="grid c2 t1 x5"><x></x><x></x><x></x><x></x><a></a><b></b><c></c><d></d><e></e><f></f><x></x></div> 134 <div class="grid c3 t1 x5"><x></x><x></x><x></x><x></x><a></a><b></b><c></c><d></d><e></e><f></f><x></x></div> 135 136 <div class="grid c1 t2 x5"><x></x><x></x><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 137 <div class="grid c2 t2 x5"><x></x><x></x><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 138 <div class="grid c3 t2 x5"><x></x><x></x><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 139 140 <div class="grid c1 t1 x4"><x></x><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 141 <div class="grid c2 t1 x4"><x></x><x></x><x></x><a></a><b></b><c></c><d></d><e></e><f></f><x></x></div> 142 <div class="grid c3 t1 x4"><x></x><x></x><x></x><a></a><b></b><c></c><d></d><e></e><f></f><x></x></div> 143 144 <div class="grid c1 t2 x4"><x></x><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 145 <div class="grid c2 t2 x4"><x></x><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 146 <div class="grid c3 t2 x4"><x></x><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 147 148 <div class="grid c1 t1 x3"><x></x><x></x><a></a><b></b><f></f><x></x></div> 149 <div class="grid c2 t1 x3"><x></x><x></x><a></a><b></b><c></c><e></e><f></f><x></x></div> 150 <div class="grid c3 t1 x3"><x></x><x></x><a></a><b></b><c></c><e></e><f></f><x></x></div> 151 152 <div class="grid c1 t2 x3"><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 153 <div class="grid c2 t2 x3"><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 154 <div class="grid c3 t2 x3"><x></x><x></x><a></a><b></b><d></d><e></e><f></f><x></x></div> 155 </float> 156 157 <float> 158 <div class="grid c1 t1 x2"><x></x><a></a><b></b><f></f><x></x></div> 159 <div class="grid c2 t1 x2"><x></x><a></a><b></b><c></c><e></e><f></f><x></x></div> 160 <div class="grid c3 t1 x2"><x></x><a></a><b></b><c></c><e></e><f></f><x></x></div> 161 162 <div class="grid c1 t2 x2"><x></x><a></a><b></b><f></f><x></x></div> 163 <div class="grid c2 t2 x2"><x></x><a></a><b></b><f></f><x></x></div> 164 <div class="grid c3 t2 x2"><x></x><a></a><b></b><f></f><x></x></div> 165 166 <div class="grid c1 t1 x1"><a></a><b></b><f></f><x></x></div> 167 <div class="grid c2 t1 x1"><a></a><b></b><c></c><e></e><f></f><x></x></div> 168 <div class="grid c3 t1 x1"><a></a><b></b><c></c><e></e><f></f><x></x></div> 169 170 <div class="grid c1 t2 x1"><a></a><b></b><f></f><x></x></div> 171 <div class="grid c2 t2 x1"><a></a><b></b><f></f><x></x></div> 172 <div class="grid c3 t2 x1"><a></a><b></b><f></f><x></x></div> 173 174 <div class="grid c1 t1 x1 p1"><a></a><b></b><f></f></div> 175 <div class="grid c2 t1 x1 p1"><a></a><b></b><c></c><e></e><f></f></div> 176 <div class="grid c3 t1 x1 p1"><a></a><b></b><c></c><e></e><f></f></div> 177 178 <div class="grid c1 t2 x0 p1"><a></a><b></b><f></f></div> 179 <div class="grid c2 t2 x0 p1"><a></a><b></b><f></f></div> 180 <div class="grid c3 t2 x0 p1"><a></a><b></b><f></f></div> 181 </float> 182 183 </body> 184 </html>