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
10 problemsAll topicsAdvancedAlignmentDistributing spaceGapMain axis vs cross axisMaking a flex containerOrderSizingThe famous WTFsThe min-width:auto floorWrapping and the align-content trap
| # | title | topic | type | difficulty |
|---|---|---|---|---|
| 1 | display: flex changes the children, not the box | Making a flex container | Teaching step | Easy |
| 2 | flex-direction: column swaps which axis is which | Main axis vs cross axis | Teaching step | Easy |
| 3 | justify-content is the main axis, align-items is the cross axis | Alignment | Teaching step | Easy |
| 4 | align-items: stretch is the default | Alignment | Teaching step | Easy |
| 5 | align-self overrides the container | Alignment | Teaching step | Easy |
| 6 | justify-content distributes free space — and sometimes there is none | Distributing space | Teaching step | Easy |
| 7 | flex-grow distributes the surplus, not the container | Sizing | Teaching step | Easy |
| 8 | flex-shrink: 0 is defensive CSS | Sizing | Teaching step | Easy |
| 9 | gap spaces items without touching them | Gap | Teaching step | Easy |
| 10 | flex-wrap: wrap turns one line into many | Wrapping and the align-content trap | Teaching step | Easy |
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.