Swiss typography rests on two rules: everything sits on a shared baseline, and everything aligns to a column grid. Both take a few lines of CSS, and both are still rarely done.
Fix the baseline
One fixed line height — say 18 pixels — becomes the unit for everything: spacing is 18, 27, 36, 72 or 144 pixels, never 20 or 50. Text columns then align across the page without hand-tuning.
Twelve columns with CSS Grid
A single grid for the whole page, defined with repeat(12, minmax(0, 1fr)) and a fixed gap. Content then occupies settled ranges: metadata 1 to 2, text 3 to 7, image 8 to 12. The repetition is the design.
Two sizes are enough
One size for body text and metadata, a larger one for leads and titles. Hierarchy comes from position, white space and rules — not from six intermediate sizes.
Details people notice
Tabular figures so numeric columns stop shifting. True hairlines in the text colour instead of grey borders. Hyphenation with the language declared, or long words tear the column open.
