<!DOCTYPE html>
<html>
<meta charset="utf-8">
<title>CSS Multi-column Layout Test: Test width:max-content for a multi-column container with column-span:all children</title>
<link rel="author" title="Ting-Yu Lin" href="mailto:[email protected]">
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
<link rel="help" href="https://drafts.csswg.org/css-multicol-1/#column-span">
<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#sizing-properties">
<link rel="match" href="multicol-width-005-ref.html">
<meta name="assert" content="This test checks the width:max-content for a multi-column container is calculated correctly.">
<style>
article {
width: max-content;
border: 1px solid black;
column-gap: 10px;
}
.block {
width: 100px;
background-color: yellow;
}
.spanner {
column-span: all;
background-color: lime;
}
</style>
<!-- Case 1: column-width is specified, and "column-count:auto" is considered
one column, so <article>'s expected width is 80px. -->
<article style="column-width: 80px;">
<div class="block">block1</div>
<div class="spanner" style="width: 50px;">spanner</div>
<div class="block">block2</div>
</article>
<br>
<!-- Case 2: column-width is specified, and no other children are wider than
the column-width. Thus <article>'s expected width is 120px. -->
<article style="column-width: 120px;">
<div class="block">block1</div>
<div class="spanner" style="width: 50px;">spanner</div>
<div class="block">block2</div>
</article>
<br>
<!-- Case 3: like case 2, but the spanner's width is larger than column-width.
Thus <article>'s expected width is 150px; -->
<article style="column-width: 120px;">
<div class="block">block1</div>
<div class="spanner" style="width: 150px;">spanner</div>
<div class="block">block2</div>
</article>
<br>
<!-- Case 4: column-count is specified. <article>'s expected width is two
column boxes wide plus the column-gap, i.e. 100px*2 + 10px = 210px. -->
<article style="column-count: 2;">
<div class="block">block1</div>
<div class="spanner">spanner</div>
<div class="block">block2</div>
</article>
<br>
<!-- Case 5: column-count is specified, and column-width is larger than the
column-box's width. Thus <article>'s expected width is column-width plus
the column-gap, i.e. 110px*2 + 10px = 230px. -->
<article style="column-count: 2; column-width: 110px;">
<div class="block">block1</div>
<div class="spanner">spanner</div>
<div class="block">block2</div>
</article>
<br>
<!-- Case 6: like case 4, but the spanner's width is larger. Thus <article>'s
expected width is 250px. -->
<article style="column-count: 2;">
<div class="block">block1</div>
<div class="spanner" style="width: 250px;">spanner</div>
<div class="block">block2</div>
</article>
</html>