Bug 1251999 - [css-grid] Reftests for repeat(auto-fill/fit, <fixed-size>) where <fixed-size> has one or more intrinsic sizing functions (one is allowed).

This commit is contained in:
Mats Palmgren 2016-03-02 23:39:34 +01:00
Родитель ed62d7ab53
Коммит a6b962bbed
5 изменённых файлов: 257 добавлений и 3 удалений

Просмотреть файл

@ -24,7 +24,7 @@ html,body {
padding-right: 3px;
}
.r1 { grid-template-columns: [a] repeat(auto-fill, [b] 20px [c]) [d]; }
.r2 { grid-template-columns: [a] repeat(auto-fill, [b] 20px [c]) [d] 30px [e]; }
.r2 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(20px,20px) [c]) [d] 30px [e]; }
.r3 { grid-template-columns: [a] repeat(auto-fill, [b] 20px [c]) [d] 30px [e] 30px [f]; }
fit .r1 { grid-template-columns: [a] repeat(auto-fit, [b] 20px [c]) [d]; }
fit .r2 { grid-template-columns: [a] repeat(auto-fit, [b] 20px [c]) [d] 30px [e]; }

Просмотреть файл

@ -0,0 +1,131 @@
<!DOCTYPE HTML>
<!--
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
<html><head>
<meta charset="utf-8">
<title>Reference: repeat(auto-fill/auto-fit) with intrinsic min- or max-sizing function</title>
<link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=">
<style type="text/css">
html,body {
color:black; background-color:white; font-size:16px; padding:0; margin:0;
}
.grid {
display: grid;
position: relative;
border: 1px solid;
grid-auto-rows: 10px;
grid-gap: 2px;
margin-bottom: 2px;
padding-right: 3px;
}
.r1 { grid-template-columns: repeat(17, minmax(20px,auto)); }
.r2 { grid-template-columns: repeat(18, minmax(auto,20px)); }
.r3 { grid-template-columns: repeat(17, minmax(20px,1fr)); }
.r4 { grid-template-columns: repeat(17, minmax(1fr,20px)); }
.r5 { grid-template-columns: repeat(18, minmax(20px,min-content)); }
.r6 { grid-template-columns: repeat(18, minmax(min-content,20px)); }
.r7 { grid-template-columns: repeat(17, minmax(20px,max-content)); }
.r8 { grid-template-columns: repeat(18, minmax(max-content,20px)); }
.r1.w200 { grid-template-columns: repeat(9, minmax(20px,auto)); }
.r2.w200 { grid-template-columns: repeat(9, minmax(auto,20px)); }
.r3.w200 { grid-template-columns: repeat(9, minmax(20px,1fr)); }
.r4.w200 { grid-template-columns: repeat(9, minmax(1fr,20px)); }
.r5.w200 { grid-template-columns: repeat(9, minmax(20px,min-content)); }
.r6.w200 { grid-template-columns: repeat(9, minmax(min-content,20px)); }
.r7.w200 { grid-template-columns: repeat(9, minmax(20px,max-content)); }
.r8.w200 { grid-template-columns: repeat(9, minmax(max-content,20px)); }
fit .r1 { grid-template-columns: repeat(3, minmax(20px,auto)); }
fit .r2 { grid-template-columns: repeat(18, minmax(auto,20px)); }
fit .r3 { grid-template-columns: repeat(3, minmax(20px,1fr)); }
fit .r4 { grid-template-columns: repeat(17, minmax(1fr,20px)); }
fit .r5 { grid-template-columns: repeat(18, minmax(20px,min-content)); }
fit .r6 { grid-template-columns: repeat(18, minmax(min-content,20px)); }
fit .r7 { grid-template-columns: repeat(3, minmax(20px,max-content)); }
fit .r8 { grid-template-columns: repeat(3, minmax(max-content,20px)); }
fit .r1.w200 { grid-template-columns: repeat(3, minmax(20px,auto)); }
fit .r2.w200 { grid-template-columns: repeat(9, minmax(auto,20px)); }
fit .r3.w200 { grid-template-columns: repeat(3, minmax(20px,1fr)); }
fit .r4.w200 { grid-template-columns: repeat(9, minmax(1fr,20px)); }
fit .r5.w200 { grid-template-columns: repeat(9, minmax(20px,min-content)); }
fit .r6.w200 { grid-template-columns: repeat(9, minmax(min-content,20px)); }
fit .r7.w200 { grid-template-columns: repeat(3, minmax(20px,max-content)); }
fit .r8.w200 { grid-template-columns: repeat(3, minmax(max-content,20px)); }
.w200 { width: 200px; }
x {
height: 10px;
background: grey;
}
a,b,c { display:inline-block; height:10px; width:10px; }
x:first-child {
background: lime;
}
x:last-child {
background: blue;
}
fill,fit {
float: left;
width: 390px;
}
</style>
</head>
<body>
<fill>
<div class="grid r1"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r2"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r3"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r4"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r5"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r6"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r7"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r8"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<br clear="all">
<div class="grid r1 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r2 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r3 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r4 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r5 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r6 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r7 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r8 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
</fill>
<fit>
<div class="grid r1"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r2"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r3"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r4"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r5"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r6"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r7"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r8"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<br clear="all">
<div class="grid r1 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r2 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r3 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r4 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r5 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r6 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r7 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r8 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
</fit>
</body>
</html>

Просмотреть файл

@ -0,0 +1,117 @@
<!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: repeat(auto-fill/auto-fit) with intrinsic min- or max-sizing function</title>
<link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=">
<link rel="help" href="https://drafts.csswg.org/css-grid/#valdef-repeat-auto-fill">
<link rel="match" href="grid-repeat-auto-fill-fit-009-ref.html">
<style type="text/css">
html,body {
color:black; background-color:white; font-size:16px; padding:0; margin:0;
}
.grid {
display: grid;
position: relative;
border: 1px solid;
grid-auto-rows: 10px;
grid-gap: 2px;
margin-bottom: 2px;
padding-right: 3px;
}
.r1 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(20px,auto) [c]) [d]; }
.r2 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(auto,20px) [c]) [d]; }
.r3 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(20px,1fr) [c]) [d]; }
.r4 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(1fr,20px) [c]) [d]; }
.r5 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(20px,min-content) [c]) [d]; }
.r6 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(min-content,20px) [c]) [d]; }
.r7 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(20px,max-content) [c]) [d]; }
.r8 { grid-template-columns: [a] repeat(auto-fill, [b] minmax(max-content,20px) [c]) [d]; }
fit .r1 { grid-template-columns: [a] repeat(auto-fit, [b] minmax(20px,auto) [c]) [d]; }
fit .r2 { grid-template-columns: [a] repeat(auto-fit, [b] minmax(auto,20px) [c]) [d]; }
fit .r3 { grid-template-columns: [a] repeat(auto-fit, [b] minmax(20px,1fr) [c]) [d]; }
fit .r4 { grid-template-columns: [a] repeat(auto-fit, [b] minmax(1fr,20px) [c]) [d]; }
fit .r5 { grid-template-columns: [a] repeat(auto-fit, [b] minmax(20px,min-content) [c]) [d]; }
fit .r6 { grid-template-columns: [a] repeat(auto-fit, [b] minmax(min-content,20px) [c]) [d]; }
fit .r7 { grid-template-columns: [a] repeat(auto-fit, [b] minmax(20px,max-content) [c]) [d]; }
fit .r8 { grid-template-columns: [a] repeat(auto-fit, [b] minmax(max-content,20px) [c]) [d]; }
.w200 { width: 200px; }
x {
height: 10px;
background: grey;
}
a,b,c { display:inline-block; height:10px; width:10px; }
x:first-child {
background: lime;
}
x:last-child {
background: blue;
}
fill,fit {
float: left;
width: 390px;
}
</style>
</head>
<body>
<fill>
<div class="grid r1"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r2"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r3"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r4"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r5"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r6"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r7"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r8"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<br clear="all">
<div class="grid r1 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r2 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r3 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r4 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r5 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r6 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r7 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r8 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
</fill>
<fit>
<div class="grid r1"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r2"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r3"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r4"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r5"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r6"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r7"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r8"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<br clear="all">
<div class="grid r1 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r2 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r3 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r4 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r5 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r6 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r7 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
<div class="grid r8 w200"><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x><x><a></a><b></b><c></c></x></div>
</fit>
</body>
</html>

Просмотреть файл

@ -110,3 +110,4 @@ skip-if(Android&&isDebugBuild) == grid-row-gap-004.html grid-row-gap-004-ref.htm
== grid-repeat-auto-fill-fit-006.html grid-repeat-auto-fill-fit-006-ref.html
== grid-repeat-auto-fill-fit-007.html grid-repeat-auto-fill-fit-007-ref.html
== grid-repeat-auto-fill-fit-008.html grid-repeat-auto-fill-fit-008-ref.html
== grid-repeat-auto-fill-fit-009.html grid-repeat-auto-fill-fit-009-ref.html

Просмотреть файл

@ -5987,6 +5987,10 @@ if (IsCSSPropertyPrefEnabled("layout.css.grid.enabled")) {
"[a] repeat( auto-fit,[a b] minmax(0,0) )",
"[a] 40px repeat(auto-fit,[a b] minmax(1px, 0) [])",
"[a] auto [b] repeat(auto-fit,[a b] minmax(1mm, 1%) [c]) [c] auto",
"repeat(auto-fill,minmax(1%,auto))",
"repeat(auto-fill,minmax(1em,min-content))",
"repeat(auto-fill,minmax(1fr,1em))",
"repeat(auto-fill,minmax(max-content,1mm))",
],
invalid_values: [
"",
@ -6036,9 +6040,10 @@ if (IsCSSPropertyPrefEnabled("layout.css.grid.enabled")) {
"repeat(auto-fill, 0 [] 0)",
"repeat(auto-fill, min-content)",
"repeat(auto-fit,max-content)",
"repeat(auto-fit,1fr)",
"repeat(auto-fit,minmax(auto,auto))",
"repeat(auto-fit,[] minmax(1px, min-content))",
"repeat(auto-fit,[a] minmax(1%, auto) [])",
"repeat(auto-fit,minmax(min-content,1fr))",
"repeat(auto-fit,minmax(1fr,auto))",
],
unbalanced_values: [
"(foo] 40px",