The signature moment
The contents are on the cover
A web cover usually says one thing and sends the reader down the page for the rest. This one carries its own table of contents: four entries, each a number, a title and one line, stacked between hairline rules in a column about 22rem wide, pinned to the top right while the headline sits at the opposite corner. The weight is all on the left and low; the detail is all on the right and high. The diagonal between them is the composition, and it holds in greyscale.
Theme handoff
What comes from where
Theme and pattern
Inherits: every colour (veil contrast, type and rules base), the typeface, the spacing scale. Decides: the veil's opacity, the type ramp, the two measures, the cover's minimum height. The cover states its own text colour chain so core's :where() rule that paints cover text #fff never applies. The headline is h1: this is a page opener.
Full pattern notes
Why it works, and how it is built
Open a topic for the complete design reasoning, editing guidance and implementation notes.
Design rationaleComposition, intent and nearest alternatives
Overview
A screen-height, full-bleed core/cover set like a magazine's front: a heavy veil of your theme's contrast colour over the photograph, a display headline hung in the lower left, and a numbered contents list in a narrow column at the top right. Two regions of unequal weight on one photograph.
The signature moment: the contents are on the cover
A web cover usually says one thing and sends the reader down the page for the rest. This one carries its own table of contents: four entries, each a number, a title and one line, stacked between hairline rules in a column about 22rem wide, pinned to the top right while the headline sits at the opposite corner. The weight is all on the left and low; the detail is all on the right and high. The diagonal between them is the composition, and it holds in greyscale.
Make it yoursVariations and the edits to make first
Variations
- Paper veil: the veil is
baseat 80% and every word and rulecontrast, the photograph a pale ghost behind ink. - Contents at the foot: the headline runs wide across the top and the contents become a ruled row of four
core/columns along the cover's foot: four across from tablet width, stacked into the ruled list below 782px.
Theme behaviourInheritance, fixed decisions and contrast
What it inherits, what it decides
Inherits: every colour (veil contrast, type and rules base), the typeface, the spacing scale. Decides: the veil's opacity, the type ramp, the two measures, the cover's minimum height. The cover states its own text colour chain so core's :where() rule that paints cover text #fff never applies. The headline is h1: this is a page opener.
Technical notesBlock mechanics, responsive behaviour and constraints
Type on the photograph
Type sits on the image only because the veil makes the ground a known quantity: contrast at dimRatio 80 under base type, the pairing cover-veil measured at 9.7:1 in Twenty Twenty-Four over the lightest photograph you could choose. The contents copy is body size, so it needs the full 4.5:1, not the 3:1 allowed to large display type; the checker composites the veil over a white and a black photograph and the worse ground has to pass. Lower the veil below 80 and that stops being true.
Type and hierarchy
- The headline is display: a bare
clamp(3rem, 8vw, 10rem), off the theme's ladder, because its size is the composition; at 1920 it is about 154px and fills the lower left of the cover. It is held to a measure ofclamp(18rem, 44vw, 48rem)so it breaks into a block at every width and always leaves the contents column room beside it. - Entry titles are
h3on thelargerung; the one-line descriptions are body copy onmedium; the numbers, the issue line and "In this issue" are labels with their ownclamp()floored at 15px. - Hierarchy comes from size and the rules alone: nothing is set in capitals.
- Every heading states its size and colour chain and nothing else.
Layout
- The inner row is a wrapping flex row, stretched, with a minimum height of
clamp(34rem, 50vw, 58rem)(nevervh, which the preview frame shrinks), so the cover is about a screen tall on a desktop. - The left region is a vertical flex column with
space-between: the issue line at the top, the headline at the foot. - The contents column is a constrained group, right-justified. Its measure is
max(clamp(15rem, 24vw, 26rem), calc((600px - 100vw) * 100)): below a 600px screen the second term takes over, the column can no longer sit beside the headline and it drops beneath it at full width. At 820 the two regions still share the row. The horizontal gap uses spacing preset 40 so Twenty Twenty-Four's larger spacing scale still leaves room for both columns at 1920px. - Rules are
currentColor, so they are always the colour of the type.
What a buyer changes first
The photograph: choose Replace on the cover. Then the headline, kept to about five words, and the four entries. Add or remove an entry by duplicating or deleting its group; the last one carries the closing rule.
The hand-off row
A short row on your theme's paper under the cover, a label and one paragraph at a 34rem measure, so the cover reads as a section and shows where it ends. It is the first thing a buyer rewrites or deletes.
Included images
The copied markup includes a WordPress Photo Directory example photograph. The public image URL keeps the example visible after pasting. Select the cover and choose Replace to use your own Media Library file. See image credits for the source and license. Pasting an image URL does not import a Media Library attachment.
The markup
Core block markup and nothing else. Copy it, then paste it straight into the block editor: WordPress reads the delimiters and rebuilds the blocks.
Fetching the markup…
Variation: Contents at the foot
Fetching the markup…Variation: Paper veil
Fetching the markup…