style.css
setup.css
index.html
section {
display: flex;
flex-wrap: wrap-reverse;
}
section:nth-child(2) {
flex-direction: row-reverse;
}
section:nth-child(3) {
flex-direction: column;
}
section:nth-child(4) {
flex-direction: column-reverse;
max-height: 120px; /* Force the wrap. */
}
body {
font-family: sans-serif;
padding: 20px;
}
div {
background-color: tomato;
border-bottom: 2px solid firebrick;
border-right: 2px solid firebrick;
padding: 5px;
}
section {
background-color: gold;
min-height: 120px;
}
section:not(:first-child) {
margin-top: 20px;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="/assets/styles/reset.css" rel="stylesheet">
<link href="setup.css" rel="stylesheet">
<link href="style.css" rel="stylesheet">
</head>
<body>
<section>
<div>
<p>Item 1</p>
</div>
<div>
<p>Item 2</p>
</div>
<div>
<p>Item 3 has more text</p>
</div>
<div>
<p>Item 4 longer</p>
</div>
<div>
<p>Item 5 too</p>
</div>
<div>
<p>Item 6</p>
</div>
</section>
<section>
<div>
<p>Item 1</p>
</div>
<div>
<p>Item 2</p>
</div>
<div>
<p>Item 3 has more text</p>
</div>
<div>
<p>Item 4 longer</p>
</div>
<div>
<p>Item 5 too</p>
</div>
<div>
<p>Item 6</p>
</div>
</section>
<section>
<div>
<p>Item 1</p>
</div>
<div>
<p>Item 2</p>
</div>
<div>
<p>Item 3 has more text</p>
</div>
<div>
<p>Item 4 longer</p>
</div>
<div>
<p>Item 5 too</p>
</div>
<div>
<p>Item 6</p>
</div>
</section>
<section>
<div>
<p>Item 1</p>
</div>
<div>
<p>Item 2</p>
</div>
<div>
<p>Item 3 has more text</p>
</div>
<div>
<p>Item 4 longer</p>
</div>
<div>
<p>Item 5 too</p>
</div>
<div>
<p>Item 6</p>
</div>
</section>
</body>
</html>