• Frank Jamison dressed as a fantasy scholar wearing a hooded cloak and leather armor while studying a glowing book titled The CSS Codex, with floating CSS code visible behind him in a medieval stone chamber.
    CSS Architecture

    The CSS Codex, Part V: Three Layout Tactics for One Battlefield

    When I first began building layouts with CSS, I believed the problem was complexity. Pages broke. Columns collapsed. Elements wandered across the screen like drunken adventurers leaving a tavern at midnight. My assumption was that layout required more tricks, more hacks, or more cleverness. That assumption was wrong. Layout problems in CSS rarely come from a lack of cleverness. They come from a lack of strategy. In the world of tabletop adventure, a battlefield is rarely conquered through a single tactic. A warrior advances differently than a ranger. A wizard approaches the same terrain with an entirely different plan. The same ground may be crossed in several ways, but the…

  • Frank Jamison sits at a wooden desk in a medieval study dressed as a fantasy adventurer, wearing a green tunic and leather cloak while reading from an open book surrounded by candles, dice, and shelves of old volumes, evoking the feeling of a scholar studying arcane knowledge.
    CSS Architecture

    The CSS Codex, Part IV: The Default Terrain of Normal Flow

    When I first began learning CSS layout, I believed positioning elements was something I had to actively command. I imagined that every element needed to be pushed into place like pieces on a tactical map. If a heading appeared slightly off, I tried another property. If a paragraph drifted out of alignment, I forced it back with margins or positioning. Eventually I discovered that the browser already has a plan. Before any layout system is invoked, before Flexbox or Grid enter the story, every web page follows a quiet and predictable rule system called normal flow. Normal flow is the browser default layout behavior. It is the terrain upon which…