<!DOCTYPE HTML> <!-- Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ --> <html><head> <meta charset="utf-8"> <title>CSS Grid Test: Placement involving named lines</title> <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1226697"> <link rel="help" href="https://drafts.csswg.org/css-grid/#grid-placement-int"> <link rel="match" href="grid-placement-named-lines-003-ref.html"> <style type="text/css"> body,html { color:black; background:white; font-size:12px; padding:0; margin:0; } .grid { display: grid; position: relative; border: 1px solid; grid-template-columns: [A-start] 60px 60px [A-start] 60px; grid-template-areas: "B A"; grid-auto-columns: 40px; grid-auto-rows: 15px; grid-gap: 1px; } x { background: lime; border: 1px solid; } y { position: absolute; border: 1px solid blue; bottom:0;height:0;left:0;right:0; grid-row-end:span 1!important; } .a2 { bottom:2px; } .a3 { bottom:4px; } .a4 { bottom:6px; } .a5 { bottom:8px; } </style> </head> <body> <pre> grid-template-columns: [A-start] 60px 60px [A-start] 60px; grid-template-areas: "B A"; grid-auto-columns: 40px; grid-gap: 1px; </pre> <pre>grid-column-start:</pre> <div class="grid" style="padding-right:13px; border-right-width:5px"> <x style="grid-row:1; grid-column:1; background:grey"></x> <x style="grid-row:2; grid-column-start:-1">-1</x> <x style="grid-row:3; grid-column-start:A">A</x> <x style="grid-row:4; grid-column-start:A-start -1">A -1</x> <x style="grid-row:4; grid-column-start:B -1">B -1</x> <x style="grid-row:5; grid-column-start:A-start -2">A -2</x> <x style="grid-row:6; grid-column-start:A-start -3">A -3</x> <x style="grid-row:6; grid-column-start:A-start -4">A -4</x> <x style="grid-row:6; grid-column-start:A-start -5">A -5</x> <x style="grid-row:7; grid-column-start:A-start">A</x> <x style="grid-row:7; grid-column-start:B">B</x> <x style="grid-row:8; grid-column-start:A-start 1">A 1</x> <x style="grid-row:8; grid-column-start:A-start 2">A 2</x> <x style="grid-row:8; grid-column-start:A-start 3">A 3</x> <x style="grid-row:8; grid-column-start:A-start 4">A 4</x> <x style="grid-row:8; grid-column-start:A-start 5">A 5</x> <y style="grid-row:2; grid-column-start:-1"></y> <y style="grid-row:3; grid-column-start:A"></y> <y style="grid-row:4; grid-column-start:A-start -1"></y> <y style="grid-row:4; grid-column-start:B -1" class="a2"></y> <y style="grid-row:5; grid-column-start:A-start -2"></y> <y style="grid-row:6; grid-column-start:A-start -3"></y> <y style="grid-row:6; grid-column-start:A-start -4" class="a2"></y> <y style="grid-row:6; grid-column-start:A-start -5" class="a3"></y> <y style="grid-row:7; grid-column-start:A-start"></y> <y style="grid-row:7; grid-column-start:B" class="a2"></y> <y style="grid-row:8; grid-column-start:A-start 1"></y> <y style="grid-row:8; grid-column-start:A-start 2" class="a2"></y> <y style="grid-row:8; grid-column-start:A-start 3" class="a3"></y> <y style="grid-row:8; grid-column-start:A-start 4" class="a4"></y> <y style="grid-row:8; grid-column-start:A-start 5" class="a5"></y> </div> <pre>grid-column-end:</pre> <div class="grid" style="padding-left:13px;"> <x style="grid-row:1; grid-column:1; background:grey"></x> <x style="grid-row:2; grid-column-end:-1">-1</x> <x style="grid-row:3; grid-column-end:A">A</x> <x style="grid-row:4; grid-column-end:A-start -1">A -1</x> <x style="grid-row:4; grid-column-end:B -1">B -1</x> <x style="grid-row:5; grid-column-end:A-start -2">A -2</x> <x style="grid-row:6; grid-column-end:A-start -3">A -3</x> <x style="grid-row:6; grid-column-end:A-start -4">A -4</x> <x style="grid-row:6; grid-column-end:A-start -5">A -5</x> <x style="grid-row:7; grid-column-end:A-start">A</x> <x style="grid-row:7; grid-column-end:B">B</x> <x style="grid-row:8; grid-column-end:A-start 1">A 1</x> <x style="grid-row:8; grid-column-end:A-start 2">A 2</x> <x style="grid-row:8; grid-column-end:A-start 3">A 3</x> <x style="grid-row:8; grid-column-end:A-start 4">A 4</x> <x style="grid-row:8; grid-column-end:A-start 5">A 5</x> <y style="grid-row:2; grid-column-end:-1"></y> <y style="grid-row:3; grid-column-end:A"></y> <y style="grid-row:4; grid-column-end:A-start -1"></y> <y style="grid-row:4; grid-column-end:B -1" class="a2"></y> <y style="grid-row:5; grid-column-end:A-start -2"></y> <y style="grid-row:6; grid-column-end:A-start -3"></y> <y style="grid-row:6; grid-column-end:A-start -4" class="a2"></y> <y style="grid-row:6; grid-column-end:A-start -5" class="a3"></y> <y style="grid-row:7; grid-column-end:A-start"></y> <y style="grid-row:7; grid-column-end:B" class="a2"></y> <y style="grid-row:8; grid-column-end:A-start 1"></y> <y style="grid-row:8; grid-column-end:A-start 2" class="a2"></y> <y style="grid-row:8; grid-column-end:A-start 3" class="a3"></y> <y style="grid-row:8; grid-column-end:A-start 4" class="a4"></y> <y style="grid-row:8; grid-column-end:A-start 5" class="a5"></y> </div> <pre>grid-column: / span A-start 2</pre> <div class="grid"> <x style="grid-row:1; grid-column:1; background:grey"></x> <x style="grid-row:2; grid-column:-1/span A-start 2">-1</x> <x style="grid-row:3; grid-column:4/span A">A</x> <x style="grid-row:4; grid-column:-2/span A-start 2">-2</x> <x style="grid-row:5; grid-column:-3/span A-start 2">-3</x> <x style="grid-row:6; grid-column:-4/span A-start 2">-4</x> <x style="grid-row:7; grid-column:-5/span A-start 2">-5</x> <x style="grid-row:8; grid-column:A-start -1/span A-start 2">A -1</x> <x style="grid-row:9; grid-column:B -1/span A-start 2">B -1</x> <x style="grid-row:10; grid-column:A-start -2/span A-start 2">A -2</x> <x style="grid-row:11; grid-column:A-start -3/span A-start 2">A -3</x> <x style="grid-row:12; grid-column:A-start -4/span A-start 2">A -4</x> <x style="grid-row:13; grid-column:A-start -5/span A-start 2">A -5</x> <x style="grid-row:14; grid-column:A-start/span A-start 2">A</x> <x style="grid-row:15; grid-column:B/span A">span A</x> <x style="grid-row:16; grid-column:A-start 1/span A-start 2">A 1</x> <x style="grid-row:17; grid-column:A-start 2/span A-start 2">A 2</x> <x style="grid-row:18; grid-column:A-start 3/span A-start 2">A 3</x> <x style="grid-row:19; grid-column:A-start 4/span A-start 2">A 4</x> <x style="grid-row:20; grid-column:A-start 5/span A-start 2">A 5</x> <y style="grid-row:2; grid-column:-1/span A-start 2"></y> <y style="grid-row:3; grid-column:4/span A"></y> <y style="grid-row:4; grid-column:-2/span A-start 2"></y> <y style="grid-row:5; grid-column:-3/span A-start 2"></y> <y style="grid-row:6; grid-column:-4/span A-start 2"></y> <y style="grid-row:7; grid-column:-5/span A-start 2"></y> <y style="grid-row:8; grid-column:A-start -1/span A-start 2"></y> <y style="grid-row:9; grid-column:B -1/span A-start 2"></y> <y style="grid-row:10; grid-column:A-start -2/span A-start 2"></y> <y style="grid-row:11; grid-column:A-start -3/span A-start 2"></y> <y style="grid-row:12; grid-column:A-start -4/span A-start 2"></y> <y style="grid-row:13; grid-column:A-start -5/span A-start 2"></y> <y style="grid-row:14; grid-column:A-start/span A-start 2"></y> <y style="grid-row:15; grid-column:B/span B"></y> <y style="grid-row:16; grid-column:A-start 1/span A-start 2"></y> <y style="grid-row:17; grid-column:A-start 2/span A-start 2"></y> <y style="grid-row:18; grid-column:A-start 3/span A-start 2"></y> <y style="grid-row:19; grid-column:A-start 4/span A-start 2"></y> <y style="grid-row:20; grid-column:A-start 5/span A-start 2"></y> </div> </body> </html>