wpt / css / css-grid / layout-algorithm / grid-flex-track-intrinsic-sizes-003.html

Status: FAIL | Duration: 141ms | Subtests: 86/102 | Open test on wpt.live | wpt.fyi

Data from commit:
a50cb89 wpt: run reference-named files which are themselves tests (#836) (2026-09-03)

SubtestStatusMessage
auto min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;PASS
auto min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;PASS
auto min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;PASS
auto min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);PASS
auto min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);PASS
auto min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);PASS
auto min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);PASS
auto min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);PASS
auto min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;PASS
auto min item 'grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;PASS
auto min item 'grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;PASS
auto min item 'grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;PASS
auto min item 'grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;PASS
auto min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;PASS
auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);PASS
auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);PASS
auto min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);PASS
auto min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);PASS
auto min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);PASS
auto min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);PASS
auto min item 'grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);PASS
auto min item 'grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);PASS
auto min item 'grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);PASS
auto min item 'grid' with: grid-template-columns: 0fr min-content; and grid-template-rows: 0fr min-content;PASS
auto min item 'grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;PASS
auto min item 'grid' with: grid-template-columns: 0.5fr auto; and grid-template-rows: 0.5fr auto;PASS
auto min item 'grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;PASS
auto min item 'grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;PASS
auto min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;PASS
auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;PASS
auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;PASS
auto min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;PASS
auto min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;PASS
auto min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;PASS
min-content min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;PASS
min-content min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;PASS
min-content min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;PASS
min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);PASS
min-content min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);PASS
min-content min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);PASS
min-content min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);PASS
min-content min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);PASS
min-content min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;FAILassert_in_array: gridTemplateColumns value "0px 0px" not in array ["50px 50px"]
min-content min item 'grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;FAILassert_in_array: gridTemplateColumns value "0px 60px" not in array ["0px 100px"]
min-content min item 'grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;FAILassert_in_array: gridTemplateColumns value "60px 0px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;FAILassert_in_array: gridTemplateColumns value "30px 30px" not in array ["50px 50px"]
min-content min item 'grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;FAILassert_in_array: gridTemplateColumns value "15px 45px" not in array ["25px 75px"]
min-content min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;FAILassert_in_array: gridTemplateColumns value "0px 0px 60px" not in array ["50px 50px 0px"]
min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);PASS
min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);PASS
min-content min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);PASS
min-content min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);PASS
min-content min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);PASS
min-content min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);FAILassert_in_array: gridTemplateColumns value "0px 0px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);FAILassert_in_array: gridTemplateColumns value "0px 60px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);FAILassert_in_array: gridTemplateColumns value "30px 30px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);FAILassert_in_array: gridTemplateColumns value "30px 30px" not in array ["75px 25px"]
min-content min item 'grid' with: grid-template-columns: 0fr min-content; and grid-template-rows: 0fr min-content;FAILassert_in_array: gridTemplateColumns value "0px 0px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;FAILassert_in_array: gridTemplateColumns value "0px 60px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 0.5fr auto; and grid-template-rows: 0.5fr auto;FAILassert_in_array: gridTemplateColumns value "30px 30px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;FAILassert_in_array: gridTemplateColumns value "60px 0px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;FAILassert_in_array: gridTemplateColumns value "60px 0px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;FAILassert_in_array: gridTemplateColumns value "60px 0px" not in array ["100px 0px"]
min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;PASS
min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;PASS
min-content min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;PASS
min-content min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;PASS
min-content min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;PASS
50px min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;PASS
50px min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;PASS
50px min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;PASS
50px min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);PASS
50px min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);PASS
50px min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);PASS
50px min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);PASS
50px min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);PASS
50px min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;PASS
50px min item 'grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;PASS
50px min item 'grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;PASS
50px min item 'grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;PASS
50px min item 'grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;PASS
50px min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;PASS
50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);PASS
50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);PASS
50px min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);PASS
50px min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);PASS
50px min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);PASS
50px min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);PASS
50px min item 'grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);PASS
50px min item 'grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);PASS
50px min item 'grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);PASS
50px min item 'grid' with: grid-template-columns: 0fr min-content; and grid-template-rows: 0fr min-content;PASS
50px min item 'grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;PASS
50px min item 'grid' with: grid-template-columns: 0.5fr auto; and grid-template-rows: 0.5fr auto;PASS
50px min item 'grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;PASS
50px min item 'grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;PASS
50px min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;PASS
50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;PASS
50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;PASS
50px min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;PASS
50px min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;PASS
50px min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;PASS

/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-003.html

<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Grid Layout Test: Intrinsic contribution of an item with flex tracks</title>
<link rel="author" title="Oriol Brufau" href="mailto:obrufau@igalia.com">
<link rel="author" title="Tab Atkins-Bittner" href="mailto:jackalmage@gmail.com">
<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
<link rel="help" href="https://drafts.csswg.org/css-grid-1/#algo-spanning-items">
<link rel="help" href="https://drafts.csswg.org/css-grid-1/#algo-spanning-flex-items">
<link rel="help" href="https://drafts.csswg.org/css-grid-1/#min-size-auto">
<meta name="assert" content="This test checks that the intrinsic contribution of a single grid item is distributed correctly among the tracks it spans when flexible tracks are involved, and the item's size is determined by its children rather than explicitly.">
<style>
#grid {
  display: grid;
  width: 60px;
  height: 60px;
  border: solid;
}
#item {
  background: blue;
}
#item::before {
  content: "";
  display: block;
  width: 100px;
  height: 100px;
}
</style>

<div id="log"></div>

<div id="grid">
  <div id="item"></div>
</div>

<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="../grid-definition/support/testing-utils.js"></script>
<script>
const item = document.getElementById("item");
let testset = "unlabeled";
function checkTrackSizes(span, trackList, expected) {
  item.style.gridColumn = item.style.gridRow = `span ${span}`;
  TestingUtils.testGridTemplateColumnsRows("grid", trackList, trackList, expected, expected, testset);
}

// First check for distributing auto minimum ///////////////////////////////////
testset = "auto min item";

// Item spanning an auto flexible track
checkTrackSizes(1, "0fr", "100px");
checkTrackSizes(1, "1fr", "100px");
checkTrackSizes(1, "2fr", "100px");

// Item spanning a fixed flexible track
checkTrackSizes(1, "minmax(0, 0fr)", "0px");
checkTrackSizes(1, "minmax(0, .5fr)", "30px");
checkTrackSizes(1, "minmax(0, 1fr)", "60px");
checkTrackSizes(1, "minmax(0, 2fr)", "60px");
checkTrackSizes(1, "minmax(75px, 1fr)", "75px");

// Item spanning 2 auto flexible tracks
checkTrackSizes(2, "0fr 0fr", "0px 0px");
checkTrackSizes(2, "0fr 1fr", "0px 60px");
checkTrackSizes(2, "1fr 0fr", "60px 0px");
checkTrackSizes(2, "1fr 1fr", "30px 30px");
checkTrackSizes(2, "1fr 3fr", "15px 45px");
checkTrackSizes(2, "0fr 0fr 1fr", "0px 0px 60px");

// Item spanning 2 fixed flexible tracks
checkTrackSizes(2, "minmax(0, 0fr) minmax(0, 0fr)", "0px 0px");
checkTrackSizes(2, "minmax(0, 0fr) minmax(0, 1fr)", "0px 60px");
checkTrackSizes(2, "minmax(15px, 0fr) minmax(0, 1fr)", "15px 45px");
checkTrackSizes(2, "minmax(20px, 1fr) minmax(0, 1fr)", "30px 30px");
checkTrackSizes(2, "minmax(40px, 1fr) minmax(0, 1fr)", "40px 20px");

// Item spanning an auto flexible track and a fixed flexible track
checkTrackSizes(2, "0fr minmax(0, 0fr)", "0px 0px");
checkTrackSizes(2, "0fr minmax(0, 1fr)", "0px 60px");
checkTrackSizes(2, "1fr minmax(0, 1fr)", "30px 30px");
checkTrackSizes(2, "1fr minmax(25px, 1fr)", "30px 30px");

// Item spanning an auto flexible track and an intrinsic non-flexible track
checkTrackSizes(2, "0fr min-content", "0px 0px");
checkTrackSizes(2, "0fr auto", "0px 60px");
checkTrackSizes(2, "0.5fr auto", "30px 30px");
checkTrackSizes(2, "1fr auto", "60px 0px");
checkTrackSizes(2, "1fr max-content", "60px 0px");
checkTrackSizes(2, "1fr min-content", "60px 0px");

// Item spanning a fixed flexible track and an intrinsic non-flexible track
checkTrackSizes(2, "minmax(0, 0fr) min-content", "0px 0px");
checkTrackSizes(2, "minmax(0, 0fr) auto", "0px 60px");
checkTrackSizes(2, "minmax(0, 1fr) auto", "60px 0px");
checkTrackSizes(2, "minmax(25px, 0fr) auto", "25px 35px");
checkTrackSizes(2, "minmax(25px, 1fr) auto", "60px 0px");

// Now check for distributing min content //////////////////////////////////////
item.style.minWidth  = "min-content"; // min-content = 100px > grid
item.style.minHeight = "100px"; // min-content doesn't resolve in block axis (yet?)
testset = "min-content min item";

// Item spanning an auto flexible track
checkTrackSizes(1, "0fr", "100px");
checkTrackSizes(1, "1fr", "100px");
checkTrackSizes(1, "2fr", "100px");

// Item spanning a fixed flexible track
checkTrackSizes(1, "minmax(0, 0fr)", "0px");
checkTrackSizes(1, "minmax(0, .5fr)", "30px");
checkTrackSizes(1, "minmax(0, 1fr)", "60px");
checkTrackSizes(1, "minmax(0, 2fr)", "60px");
checkTrackSizes(1, "minmax(75px, 1fr)", "75px");

// Item spanning 2 auto flexible tracks
checkTrackSizes(2, "0fr 0fr", "50px 50px");
checkTrackSizes(2, "0fr 1fr", "0px 100px");
checkTrackSizes(2, "1fr 0fr", "100px 0px");
checkTrackSizes(2, "1fr 1fr", "50px 50px");
checkTrackSizes(2, "1fr 3fr", "25px 75px");
checkTrackSizes(2, "0fr 0fr 1fr", "50px 50px 0px");

// Item spanning 2 fixed flexible tracks
checkTrackSizes(2, "minmax(0, 0fr) minmax(0, 0fr)", "0px 0px");
checkTrackSizes(2, "minmax(0, 0fr) minmax(0, 1fr)", "0px 60px");
checkTrackSizes(2, "minmax(15px, 0fr) minmax(0, 1fr)", "15px 45px");
checkTrackSizes(2, "minmax(20px, 1fr) minmax(0, 1fr)", "30px 30px");
checkTrackSizes(2, "minmax(40px, 1fr) minmax(0, 1fr)", "40px 20px");

// Item spanning an auto flexible track and a fixed flexible track
checkTrackSizes(2, "0fr minmax(0, 0fr)", "100px 0px");
checkTrackSizes(2, "0fr minmax(0, 1fr)", "100px 0px");
checkTrackSizes(2, "1fr minmax(0, 1fr)", "100px 0px");
checkTrackSizes(2, "1fr minmax(25px, 1fr)", "75px 25px");

// Item spanning an auto flexible track and an intrinsic non-flexible track
checkTrackSizes(2, "0fr min-content", "100px 0px");
checkTrackSizes(2, "0fr auto", "100px 0px");
checkTrackSizes(2, "0.5fr auto", "100px 0px");
checkTrackSizes(2, "1fr auto", "100px 0px");
checkTrackSizes(2, "1fr max-content", "100px 0px");
checkTrackSizes(2, "1fr min-content", "100px 0px");

// Item spanning a fixed flexible track and an intrinsic non-flexible track
checkTrackSizes(2, "minmax(0, 0fr) min-content", "0px 0px");
checkTrackSizes(2, "minmax(0, 0fr) auto", "0px 60px");
checkTrackSizes(2, "minmax(0, 1fr) auto", "60px 0px");
checkTrackSizes(2, "minmax(25px, 0fr) auto", "25px 35px");
checkTrackSizes(2, "minmax(25px, 1fr) auto", "60px 0px");

// Now check for distributing fixed min ////////////////////////////////////////
item.style.minWidth = "50px"; // minimum < grid < min-content
item.style.minHeight = "50px"; // minimum < grid < min-content
testset = "50px min item";

// Item spanning an auto flexible track
checkTrackSizes(1, "0fr", "50px");
checkTrackSizes(1, "1fr", "60px");
checkTrackSizes(1, "2fr", "60px");

// Item spanning a fixed flexible track
checkTrackSizes(1, "minmax(0, 0fr)", "0px");
checkTrackSizes(1, "minmax(0, .5fr)", "30px");
checkTrackSizes(1, "minmax(0, 1fr)", "60px");
checkTrackSizes(1, "minmax(0, 2fr)", "60px");
checkTrackSizes(1, "minmax(75px, 1fr)", "75px");

// Item spanning 2 auto flexible tracks
checkTrackSizes(2, "0fr 0fr", "25px 25px");
checkTrackSizes(2, "0fr 1fr", "0px 60px");
checkTrackSizes(2, "1fr 0fr", "60px 0px");
checkTrackSizes(2, "1fr 1fr", "30px 30px");
checkTrackSizes(2, "1fr 3fr", "15px 45px");
checkTrackSizes(2, "0fr 0fr 1fr", "25px 25px 10px");

// Item spanning 2 fixed flexible tracks
checkTrackSizes(2, "minmax(0, 0fr) minmax(0, 0fr)", "0px 0px");
checkTrackSizes(2, "minmax(0, 0fr) minmax(0, 1fr)", "0px 60px");
checkTrackSizes(2, "minmax(15px, 0fr) minmax(0, 1fr)", "15px 45px");
checkTrackSizes(2, "minmax(20px, 1fr) minmax(0, 1fr)", "30px 30px");
checkTrackSizes(2, "minmax(40px, 1fr) minmax(0, 1fr)", "40px 20px");

// Item spanning an auto flexible track and a fixed flexible track
checkTrackSizes(2, "0fr minmax(0, 0fr)", "50px 0px");
checkTrackSizes(2, "0fr minmax(0, 1fr)", "50px 10px");
checkTrackSizes(2, "1fr minmax(0, 1fr)", "50px 10px");
checkTrackSizes(2, "1fr minmax(25px, 1fr)", "30px 30px");

// Item spanning an auto flexible track and an intrinsic non-flexible track
checkTrackSizes(2, "0fr min-content", "50px 0px");
checkTrackSizes(2, "0fr auto", "50px 10px");
checkTrackSizes(2, "0.5fr auto", "50px 10px");
checkTrackSizes(2, "1fr auto", "60px 0px");
checkTrackSizes(2, "1fr max-content", "60px 0px");
checkTrackSizes(2, "1fr min-content", "60px 0px");

// Item spanning a fixed flexible track and an intrinsic non-flexible track
checkTrackSizes(2, "minmax(0, 0fr) min-content", "0px 0px");
checkTrackSizes(2, "minmax(0, 0fr) auto", "0px 60px");
checkTrackSizes(2, "minmax(0, 1fr) auto", "60px 0px");
checkTrackSizes(2, "minmax(25px, 0fr) auto", "25px 35px");
checkTrackSizes(2, "minmax(25px, 1fr) auto", "60px 0px");
</script>