layout/reftests/css-grid/grid-order-placement-auto-001.html
author Robert Longson <longsonr@gmail.com>
Sat, 04 Feb 2023 15:41:48 +0000
changeset 651752 40237e7707f1928c84d09cdd2f1fd018a74ea784
parent 261125 37eb43b1d82ea3460d562a4ac4d0d9a2af20ae6c
permissions -rw-r--r--
Bug 1814872 - Fix degenerate radial gradient handling r=emilio This is a change from SVG 1.1 where we only had to check for r=0 because fr did not exist. The SVG 2 behaviour was clarified in https://github.com/w3c/svgwg/issues/648 Differential Revision: https://phabricator.services.mozilla.com/D168783

<!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 Test: Testing automatic placement of grid items with 'order'</title>
  <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1107786">
  <link rel="help" href="http://dev.w3.org/csswg/css-grid/#auto-placement-algo">
  <link rel="help" href="http://dev.w3.org/csswg/css-flexbox-1/#order-property">
  <link rel="match" href="grid-order-placement-auto-001-ref.html">
  <style type="text/css">
.grid {
  display: grid;
  border: 1px solid green;
  grid-template-columns: 20px 20px 20px 20px;
  grid-template-rows: 20px 20px 20px;
  grid-auto-flow: row;
  grid-auto-columns: 20px;
  grid-auto-rows: 20px;
  font-size: 12px;
}

span {
  background: lime;
  border: 1px solid;
}

.test1 .a {
  grid-row: 1;
  grid-column: 2 / span 1;
}
.test1 .b {
  grid-row: 2;
  grid-column: 2 / span 3;
  order: 3;
}
.test1 .c, .test2 .c {
  grid-row: 1 / span 2;
  grid-column: auto / span 3;
  order: 1;
}

.test2 .a {
  grid-row: 1;
  grid-column: 2 / span 3;
  order: 3;
}
.test2 .b {
  grid-row: 2;
  grid-column: 2 / span 1;
  order: 1;
}

.test3 {
  grid-template-areas:
    'a a a . '
    'a a a . '
    '. b b . '
  ;
}
.test3 .a {
  grid-area: a;
  order: 5;
}
.test3 .b {
  grid-column: 2 / span 3; 
  grid-row: b;
  order: 4;
}
.test3 .c {
  grid-row: auto / span 2;
  grid-column: auto / span 3;
  order: 3;
}

.test4 .c {
  grid-row: auto / span 2;
  grid-column: auto / span 3;
  order: 3;
}

.test5 .c {
  grid-row-start: 2;
  grid-column: auto / span 3;
  order: 2;
}

.test6 {
  grid-row-start: 2;
  grid-column: auto / span X;
  order: 1;
}

.e {
  grid-row-start: 2;
  grid-column: auto / span 1;
  order: 1;
}
    </style>
</head>
<body>

<div class="grid test1">
<span class="a">a</span>
<span class="b">b</span>
<span class="c">c</span>
<span class="d">d</span>
<span class="d">D</span>
<span class="e">e</span>
</div>

<div class="grid test2">
<span class="a">a</span>
<span class="b">b</span>
<span class="c">c</span>
<span class="d">d</span>
<span class="d">D</span>
<span class="e">e</span>
</div>

<div class="grid test3">
<span class="a">a</span>
<span class="b">b</span>
<span class="c">c</span>
<span class="d">d</span>
<span class="d">D</span>
<span class="e">e</span>
</div>

<div class="grid test4">
<span class="c">c</span>
<span class="d">d</span>
<span class="d">D</span>
<span class="e">e</span>
</div>

<div class="grid test5">
<span class="c">c</span>
<span class="d">d</span>
<span class="d">D</span>
<span class="e">e</span>
</div>

<div class="grid test1">
<span class="a">a</span>
<span class="b">b</span>
<span class="c">c</span>
<span class="test6">d</span>
<span class="test6">D</span>
<span class="e">e</span>
</div>

</body>
</html>