A deep dive into rebuilding the FIFA World Cup standings bracket layout using CSS Grid and Subgrid. The author inspects the original FIFA website's markup, critiques its hacky approach of splitting related elements into separate DOM nodes to mirror the visual design, then proposes a semantically cleaner alternative. The solution uses a parent grid with 8 columns and 4 rows, then applies `grid-template-columns: subgrid` and `grid-template-rows: subgrid` on nested round elements so that start and end match columns can be positioned at opposite ends of the shared grid. Flexbox is used within each column to distribute match items equally for proper vertical centering and connector alignment. Responsive behavior is also covered, collapsing the layout to a single-column flow on smaller screens.
Table of contents
The problemBuilding the layoutMoving to real contentPutting it all togetherLearn more about CSS layouts132.9K Impressions9 Comments