Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(684)

Unified Diff: third_party/WebKit/LayoutTests/fast/css-grid-layout/fit-content-columns.html

Issue 2287113004: [css-grid] Implement fit-content track size (Closed)
Patch Set: Patch for landing Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/fast/css-grid-layout/fit-content-columns-expected.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/LayoutTests/fast/css-grid-layout/fit-content-columns.html
diff --git a/third_party/WebKit/LayoutTests/fast/css-grid-layout/fit-content-columns.html b/third_party/WebKit/LayoutTests/fast/css-grid-layout/fit-content-columns.html
new file mode 100644
index 0000000000000000000000000000000000000000..95f65f074ac6e1e49b2110bb01146264d0c349c3
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css-grid-layout/fit-content-columns.html
@@ -0,0 +1,347 @@
+<!DOCTYPE html>
+<link href="resources/grid.css" rel="stylesheet">
+<style>
+.grid {
+ justify-content: start;
+ width: 100px;
+ position: relative;
+ padding-top: 10px;
+ margin-bottom: 5px;
+ grid-column-gap: 5px;
+}
+
+.fc0 { grid-template-columns: fit-content(0px);}
+.fc40 { grid-template-columns: fit-content(40px); }
+.fc80 { grid-template-columns: fit-content(80px); }
+.fc110 { grid-template-columns: fit-content(110px); }
+
+.fc0x2 { grid-template-columns: repeat(2, fit-content(0px));}
+.fc40x2 { grid-template-columns: repeat(2, fit-content(40px)); }
+.fc80x2 { grid-template-columns: repeat(2, fit-content(80px)); }
+.fc110x2 { grid-template-columns: repeat(2, fit-content(110px)); }
+
+.fc0p { grid-template-columns: fit-content(0%); }
+.fc30p { grid-template-columns: fit-content(30%); }
+.fc90p { grid-template-columns: fit-content(90%); }
+.fc110p { grid-template-columns: fit-content(110%); }
+
+.fc0px2 { grid-template-columns: repeat(2, fit-content(0%)); }
+.fc30px2 { grid-template-columns: repeat(2, fit-content(30%)); }
+.fc90px2 { grid-template-columns: repeat(2, fit-content(90%)); }
+.fc110px2 { grid-template-columns: repeat(2, fit-content(110%)); }
+
+.item {
+ font: 10px/1 Ahem;
+ background: cyan;
+}
+
+.spanningItem {
+ font: 10px/1 Ahem;
+ grid-column: 1 / -1;
+ grid-row: 2;
+ background: salmon;
+}
+
+.test {
+ position: absolute;
+ left: 0; right: 0; top: 0;
+ height: 5px;
+ background: purple;
+}
+.test:nth-child(2n) { background: orange; }
+
+.floatLeft {
+ float: left;
+ width: 190px;
+}
+
+h3 { font-size: 1em; }
+
+</style>
+
+<p>This test checks that 'fit-content()' works as expected, i.e., it's similar to 'auto' ('minmax(auto, max-content)') except that the growth limit is clamped at the argument of 'fit-content' (if greater that the 'auto' minimum).</p>
+
+<div class="floatLeft">
+ <h3>Only fit-content() and with fixed size tracks.</h3>
+ <div class="grid fc0">
+ <div class="item">XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ </div>
+
+ <div class="grid fc0x2">
+ <div class="item">XXX</div>
+ <div class="spanningItem">XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc40">
+ <div class="item">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ </div>
+
+ <div class="grid fc40x2">
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc40x2">
+ <div class="item">XXX XXX</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc80">
+ <div class="item">XXX XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ </div>
+
+ <div class="grid fc80x2">
+ <div class="spanningItem">XXX XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc80x2">
+ <div class="item autoRowSecondColumn">XXX XXX XXX</div>
+ <div class="spanningItem">XXX XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(20px) 50%;">
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: minmax(10px, 40px) fit-content(40px);">
+ <div class="item">XXXXX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(40px) minmax(10%, 200px);">
+ <div class="item autoRowSecondColumn">XXXXX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+</div>
+
+<div class="floatLeft">
+ <h3>fit-content() with other content-sized tracks.</h3>
+ <div class="grid" style="grid-template-columns: fit-content(40px) max-content;">
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(40px) max-content;">
+ <div class="item">XXXXX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(40px) max-content;">
+ <div class="item autoRowSecondColumn">XXXXX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: min-content fit-content(40px);">
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: min-content fit-content(40px);">
+ <div class="item">XXXXX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: min-content fit-content(40px);">
+ <div class="item autoRowSecondColumn">XXXXX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(30px) min-content max-content">
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: min-content fit-content(30px) max-content">
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: min-content max-content fit-content(30px)">
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(30px) min-content max-content">
+ <div class="item" style="grid-column: 1">XXX XX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: min-content fit-content(30px) max-content">
+ <div class="item" style="grid-column: 1">XXX XX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: min-content max-content fit-content(30px)">
+ <div class="item" style="grid-column: 2">XXX XX</div>
+ <div class="spanningItem">XXX XX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+</div>
+
+<div class="floatLeft">
+ <h3>fit-content() with percentage arguments.</h3>
+ <div class="grid fc0p">
+ <div class="item">XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ </div>
+
+ <div class="grid fc0px2">
+ <div class="item">XXX</div>
+ <div class="spanningItem">XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc30p">
+ <div class="item">XX XX</div>
+ <div class="test autoRowFirstColumn"></div>
+ </div>
+
+ <div class="grid fc30px2">
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc30px2">
+ <div class="item autoRowSecondColumn">X X X</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc90p">
+ <div class="item">XXX XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ </div>
+
+ <div class="grid fc90px2">
+ <div class="spanningItem">XXX XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc90px2">
+ <div class="item autoRowSecondColumn">XXX XXX XXX</div>
+ <div class="spanningItem">XXX XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+</div>
+
+<div class="floatLeft">
+ <h3>max-content < fit-content() argument.</h3>
+
+ <div class="grid fc110">
+ <div class="item">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ </div>
+
+ <div class="grid fc110x2">
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid fc110x2">
+ <div class="item">XXX XXX</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(110px) fit-content(40px);">
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(110px) fit-content(40px);">
+ <div class="item autoRowSecondColumn">XX</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: max-content fit-content(110px);">
+ <div class="spanningItem" style="grid-row: 1;">XX XX XX XX</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: fit-content(110px) min-content;">
+ <div class="spanningItem" style="grid-row: 1;">XX XX XX XX</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: max-content fit-content(110px) max-content;">
+ <div class="spanningItem" style="grid-row: 1;">XX XX XX XX</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: min-content fit-content(110px) min-content;">
+ <div class="spanningItem" style="grid-row: 1;">XX XX XX XX</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+
+ <div class="grid" style="grid-template-columns: auto fit-content(110px) auto;">
+ <div class="spanningItem" style="grid-row: 1;">XX XX XX XX</div>
+ <div class="spanningItem">XXX XXX</div>
+ <div class="test autoRowFirstColumn"></div>
+ <div class="test autoRowSecondColumn"></div>
+ <div class="test autoRowThirdColumn"></div>
+ </div>
+
+</div>
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/fast/css-grid-layout/fit-content-columns-expected.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698