# Wall labels

> Five portrait frames hung in one row at deliberately unequal widths, bottom-aligned so their tops are ragged and their bases sit on one line, each with a small museum wall label beneath it: a tracked uppercase title and a line of medium and year. Includes replaceable example images. States no colour and no font of its own.

Canonical: https://patternpaste.com/pattern/wall-labels.html
Section: Gallery
Access: Included in Pattern Paste access.
Needs: Requires a block theme on WordPress 7.0 to 7.1. Classic themes and page builders are outside our supported setup. Adaptive patterns use the block theme’s colour, spacing and typography presets; styled variations declare their own colours or type.
Blocks: column, columns, group, image, paragraph
Keywords: gallery, museum, hang, caption, wall label, portrait, row

## Variations (3)

### Labels below (the default)

Identical markup in every theme.

Five frames at 18, 14, 30, 14 and 24 percent of the row, cropped to 4:5 and hung to one baseline, with the wall label under each. Your base is the wall, your contrast is the type. On a phone the five stack full width and each frame keeps its own label.

### Charcoal and saffron

This variation states its own colours and states its own type: identical in every theme.

States a charcoal wall, saffron exhibit titles and ui-monospace on the wall labels.

### Labels above

Identical markup in every theme.

The hang inverts: the frames sit on one line at the TOP and go ragged along the bottom, and each wall label moves above its frame. Same five widths, same colours, only the composition flips.


---

## The signature moment: five unequal frames hung to one baseline

The row has no grid in it at all. The five widths are not a division of anything
(18, 14, 30, 14, 24), so nothing repeats and no rhythm is implied; a 4:5 crop at
each of those widths gives five different frame heights and therefore five
different tops. What holds the row together is the single line the five bases
sit on, and the five wall labels ruled along beneath it. That is how pictures
are actually hung: not to a grid, to a common line.

It survives colourlessness because it is made of width, alignment and a 13px
label. Nothing in it is decoration: take every colour away and the composition
is unchanged, because the composition IS the unequal widths and the one
baseline.

**The mechanic that makes it work.** `verticalAlignment: "bottom"` is set on
EVERY `core/column`, not only on the `core/columns` block. The columns-level
class alone does nothing on the front end, because core's own
`align-items: normal !important` overrides it, and nothing warns you:
`cover-trio`'s first draft sat top-aligned. So each
column carries `is-vertically-aligned-bottom` and its own `flex-basis`, and only
then do the bases meet.

The bases that meet are the bottoms of the LABELS, not of the frames, so each
label has to hold the same number of lines or the frames stop agreeing. That is
why the titles are kept to about 15 characters and the medium/year lines to about
21: at 14% of a 1240px measure a label is roughly 160px wide, and a second line
in one column alone would break the device. Keep them short when you rewrite
them.

## At 390px

Core stacks `core/columns` below 782px. The unequal widths collapse to full
width, every frame becomes the same size, and the alignment has nothing left to
act on because each column is its own flex line. What survives is five frames
each with its own wall label, one under the other, which is still a hang: the
label is the thing that makes a picture read as hung, and it is per frame.

Be honest about it: **the baseline device is a desktop idea.** On a phone the
unequal widths and the single base line are gone, and the pattern is a stacked
run of labelled portraits. That is a good section, but it is not the signature.

## What it inherits, what it decides

Inherits: every colour (the wall is a `base` chain, all type a `contrast`
chain), the typeface, and the spacing scale (`spacing|80` above and below,
`spacing|50` between stacked frames on a phone, `spacing|20` between a frame and
its label).

Decides: the five widths, the 4:5 crop with `scale: "cover"`, the bottom
alignment, the 1240px measure, the clamp gutters, the `clamp(1rem, 2vw, 2rem)`
gap between frames, and the label's proportion (13px, `0.16em` tracking and
weight 600 on the title, 13px untracked at 1.4 on the medium line).

No accent appears in any rung, no rule or border is drawn, and no type sits on a
photograph: every label is below its frame, on the band's own ground.

## What a buyer changes first

The photographs. **All five images include example photographs**; choose Replace to select an image from your media library, and the 4:5 crop and the width are already
set. Then the labels. Keep the title under about 15 characters and the
medium/year line under about 21 so that no label wraps to two lines and the
baseline holds.

The widths are the third thing, and the rule is to keep them unequal and
unpatterned. They are `width` on each `core/column` and they should still total
100.

## Variations

- **Labels above**: the hang inverts vertically. Every column is
  `verticalAlignment: "top"`, so the five frames sit on one line at the top and
  the ragged edge moves to the bottom, and each wall label moves above its
  frame. Same five widths, same 4:5 crops, same colours; only the composition
  flips. It reads as a catalogue plate rather than a gallery wall, and it is the
  better choice when the section above it ends on a line of its own that the
  frame tops can meet.

- **Charcoal and saffron** (`charcoal-and-saffron`). States a charcoal wall,
  saffron exhibit titles and ui-monospace on the wall labels.

## Included images

The copied markup includes WordPress Photo Directory example photographs. The public image URLs
keep the examples visible after pasting. Select an image or cover and choose
**Replace** to use your own Media Library files. See [image credits](/image-credits/)
for the sources and licenses. Pasting an image URL does not import a Media Library
attachment.
