grid-item-margin-left-auto-002-ref.html (3722B)
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: margin-left:auto + justify-self</title> 9 <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1176793"> 10 <style type="text/css"> 11 html,body { 12 color:black; background-color:white; font-size:16px; padding:0; margin:0; 13 } 14 separator { clear:both; display:block; height:6px; } 15 16 .grid { 17 display: grid; 18 float: left; 19 position: relative; 20 border: 1px solid; 21 /* border-inline-start: 2px solid lime; */ 22 border-inline-start: 2px solid black; 23 grid-template: 1px 32px 3px / 3px 20px 2px; 24 margin-right: 4px; 25 } 26 27 span { 28 grid-area: 2 / 2; /* the center 32 x 20 pixel area */ 29 display: block; 30 width: 13px; 31 height: 9px; 32 background: grey; 33 border-block-start: 2px solid blue; 34 border-inline-start: 2px solid lime; 35 margin: 1px 1px 2px 0px; 36 align-self: start; 37 } 38 39 .vlr span { align-self: end!important; } 40 41 abs1,abs2,abs3,abs4 { 42 position: absolute; 43 top:0;left:0;bottom:0;right:0; 44 background: lightgrey; 45 } 46 abs1 { grid-area: 1 / 1 / 2 / 4; } 47 abs2 { grid-area: 1 / 1 / 4 / 2; } 48 abs3 { grid-area: 1 / 3 / 4 / 4; } 49 abs4 { grid-area: 3 / 1 / 4 / 4; } 50 51 .hl { writing-mode: horizontal-tb; direction:ltr; } 52 .hr { writing-mode: horizontal-tb; direction:rtl; } 53 .vl { writing-mode: vertical-lr; } 54 .vr { writing-mode: vertical-rl; } 55 .vlr { writing-mode: vertical-lr; direction:rtl; } 56 .vrl { writing-mode: vertical-rl; direction:ltr; } 57 58 .hl { -webkit-writing-mode: horizontal-tb; direction:ltr; } 59 .hr { -webkit-writing-mode: horizontal-tb; direction:rtl; } 60 .vl { -webkit-writing-mode: vertical-lr; } 61 .vr { -webkit-writing-mode: vertical-rl; } 62 .vlr { -webkit-writing-mode: vertical-lr; direction:rtl; } 63 .vrl { -webkit-writing-mode: vertical-rl; direction:ltr; } 64 65 .jstart { justify-self:start; } 66 .jend { justify-self:end; } 67 .jflexstart { justify-self:flex-start; } 68 .jflexend { justify-self:flex-end; } 69 .jselfstart { justify-self:self-start; } 70 .jselfend { justify-self:self-end; } 71 .jcenter { justify-self:center; } 72 .jleft { justify-self:left; } 73 .jright { justify-self:right; } 74 .jstretch1 { justify-self:stretch; } 75 .jstretch2 { justify-self:stretch; width:13px; height:auto; } 76 .jstretch3 { justify-self:stretch; height:auto; } 77 .jstretch4 { justify-self:stretch; width:auto; } 78 .jstretch5 { justify-self:stretch; width:auto; max-width:13px; } 79 .jstretch6 { justify-self:stretch; height:auto; max-height:9px; } 80 .jstretch7 { justify-self:stretch; width:auto; height:auto; max-width:13px; max-height:9px; } 81 .jauto { justify-self:auto; } 82 83 </style> 84 </head> 85 <body> 86 87 <script> 88 var gridwm = [ "vr", "vlr", "vrl" ]; // *-001.html tests hl/hr/vl 89 var wm = [ "hl", "hr", "vl", "vr", "vlr", "vrl" ]; 90 var test = [ "start", "end", "flexstart", "flexend", "center", "left", "right", 91 "stretch1", "stretch2", "stretch3", "stretch4", "stretch5", 92 "stretch6", "stretch7", "auto" ]; 93 for (var i = 0; i < gridwm.length; ++i) { 94 for (var j = 0; j < wm.length; ++j) { 95 for (var k = 0; k < test.length; ++k) { 96 var div = document.createElement("div"); 97 div.className = "grid " + gridwm[i]; 98 var span = document.createElement("span"); 99 span.className = wm[j] + " j" + test[k]; 100 div.appendChild(span); 101 div.appendChild(document.createElement("abs1")); 102 div.appendChild(document.createElement("abs2")); 103 div.appendChild(document.createElement("abs3")); 104 div.appendChild(document.createElement("abs4")); 105 106 document.body.appendChild(div) 107 } 108 document.body.appendChild(document.createElement("separator")); 109 } 110 } 111 </script> 112 113 114 </body> 115 </html>