Source code
Revision control
Copy as Markdown
Other Tools
<!DOCTYPE HTML>
<!--
Any copyright is dedicated to the Public Domain.
-->
<html><head>
<meta charset="utf-8">
<title>CSS Test: Testing layout and painting of abs.pos. grid items with 'order'</title>
<link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1107786">
<style type="text/css">
body,html { color:black; background:white; font-size:16px; padding:0; margin:0; }
.grid {
/*display: grid;*/
position: relative;
grid-template-columns: 20px 20px 20px 20px;
grid-auto-flow: row;
grid-auto-columns: 23px;
grid-auto-rows: 17px;
padding: 17px 7px 11px 13px;
width: 100px;
height: 25px;
}
.a { z-index:1; left:74px; right:5px; background:lime; }
.b { z-index:1; left:54px; right:5px; background:pink; }
.c { z-index:1; left:34px; right:5px; background:yellow; }
.d { z-index:1; left:14px; right:5px; background:silver; }
.e { display:none; }
.abs {
position: absolute;
top:3px; bottom:1px;
}
span {
background: lime;
border: 1px solid;
}
.z-1 { z-index:-1; }
.z1 { z-index:11; }
.z1.b { z-index:12; }
.z2 { z-index:13; }
.z3 { z-index:14; }
.z4 { z-index:15; }
x { background:black; order:99; float:right; }
f { float:left; }
.f2 { background:white; }
.f2 span { opacity: 0.5; }
.f2 span.e { z-index:-1; }
</style>
</head>
<body>
<f>
<div class="grid">
<span class="abs a">a</span>
<span class="abs b">b</span>
<span class="abs c">c</span>
<span class="abs e">FAIL<x>x</x></span>
<span class="abs d">d<x>x</x></span>
</div>
<div class="grid">
<div>
<span class="abs c">c</span>
<span class="abs e">FAIL<x>x</x></span>
<span class="abs d">d<x>x</x></span>
</div>
<div>
<span class="abs a">a</span>
<span class="abs b">b</span>
</div>
</div>
<div class="grid">
<div style="display:grid; order:2">
<div style="display:grid;">
<div>
<span class="abs e">FAIL<x>x</x></span>
<span class="abs d">d<x>x</x></span>
</div>
<div>
<span class="abs b">b</span>
</div>
</div>
<div>
<span class="abs c">c</span>
</div>
<div>
<span class="abs a">a</span>
</div>
</div>
</div>
<div class="grid">
<span class="abs a">a</span>
<span class="abs z1 b">b</span>
<span class="abs z2 c">c</span>
<span class="abs e">FAIL<x>x</x></span>
<span class="abs d">d<x>x</x></span>
</div>
<div class="grid">
<div>
<span class="abs z1 c">c</span>
<span class="abs e">FAIL<x>x</x></span>
<span class="abs d">d<x>x</x></span>
</div>
<div>
<span class="abs a">a</span>
<span class="abs z1 b">b</span>
</div>
</div>
<div class="grid">
<div style="display:grid; order:2">
<div style="order:2">
<span class="abs a">a</span>
</div>
<div style="order:1">
<span class="abs z2 c">c</span>
</div>
</div>
<div style="display:grid; order:1">
<div style="order:2">
<span class="abs z1 b">b</span>
</div>
<div style="order:1">
<span class="abs z-1 d">FAIL<x>x</x></span>
<span class="abs z1 d">d<x>x</x></span>
</div>
</div>
</div>
</f>
<script>
var f = document.querySelector('f');
var f2 = f.cloneNode(true);
f2.className = 'f2';
document.body.appendChild(f2);
</script>
</body>
</html>