wtf(css)layout you can see happening

CSS, with the layout showing

Forty steps through flexbox, twenty-two builds that fail unless several concepts are right at once, and the famous wtfs underneath — margin collapsing, stacking contexts, and the invisible wall inside every flex item. This is the one subject where the output IS the picture, so every problem is rendered rather than described.

Problems

37 problems
#titletopictypedifficulty
1Centre the brand mark in the mastheadAlignmentBuild itEasy
2Centre the hero card — in a container that runs downwardsMain axis vs cross axisBuild itEasy
3Centre the unread count inside its pillAlignmentBuild itEasy
4Centre the empty-state message in the results panelAlignmentBuild itEasy
5Centre the glyph in the round action buttonAlignmentBuild itEasy
6Sit the editor tools in the middle of the railAlignmentBuild itEasy
7Float the pinned tag to the front of the listOrderBuild itEasy
8Hold the terminal output at the bottom — in the order it was writtenDistributing spaceBuild itEasy
9Newest activity at the top, list still hugging the topMain axis vs cross axisBuild itEasy
10Flip your own chat messages to the rightMain axis vs cross axisBuild itEasy
11Reverse the wizard steps — and keep them on the leftMain axis vs cross axisBuild itEasy
12Drop the chips so they stack up from the floorMain axis vs cross axisBuild itEasy
13The same dialog footer, and now they have to sit at the bottomAlignmentBuild itEasy
14Send the destructive button to the far end of the toolbarDistributing spaceBuild itEasy
15Pin both team badges to the edges and centre the clockDistributing spaceBuild itEasy
16Push the close button to the far edge of the modal headerDistributing spaceBuild itEasy
17Move the whole dialog button row to the trailing edgeDistributing spaceBuild itEasy
18Render Cancel before Save without touching the markupOrderBuild itEasy
19The two panels are `flex: 1` and one of them is still widerSizingBuild itEasy
20The same tiles, keeping the widths the design gave themSizingBuild itEasy
21Make the three metric tiles exactly equal widthSizingBuild itEasy
22One flexible pane between two fixed railsSizingBuild itEasy
23Make the documents segment twice the size of the media oneSizingBuild itEasy
24Stop the avatar squashing next to a long nameSizingBuild itEasy
25Centre the card shelf and keep a 16px gutterGapBuild itEasy
26The same footer, and now the gaps have to be 32pxGapBuild itEasy
27Put exactly 24px between the nav linksGapBuild itEasy
28Give every toolbar button an equal share of space around itDistributing spaceBuild itEasy
29The same bar, and now every gap has to be the same sizeDistributing spaceBuild itEasy
30Spread the footer links from edge to edgeDistributing spaceBuild itEasy
← Prev12Next →

44 of 87 catalogue topics are authored, with 37 drills rehearsing them. Every one of them is judged: each carries a starter that has been shown to fail, at least two different correct answers that have been shown to pass, and a set of near-misses and cheats that have been shown to be caught. Nothing reaches this list until all of that holds.