# Gallery marquee frames

> Two rows of framed pictures running opposite ways past a band of two 300px rows, with the pointer driving them: the left of the frame runs them backwards, the middle holds them still so a picture can be read, and the right hurries them along. Sixteen picture plates dealt eight to a row, every one the same landscape slot whatever you upload, and both edges of the band dissolved so pictures arrive and leave rather than being cut. Includes replaceable example images. Needs the companion plugin, which comes with your access; without it, or without motion, the heading is followed by the sixteen pictures as a plain stack. States no colour and no font of its own.

Canonical: https://patternpaste.com/pattern/gallery-marquee-frames.html
Section: Gallery
Access: Included in Pattern Paste access.
Needs: Requires a block theme on WordPress 6.7 to 7.0. 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.
Also needs: Install the Pattern Paste plugin first, then paste. This section embeds one of its blocks: the plugin comes with your access, downloads from your account, and takes a minute. Paste without it and the section arrives as a plain stack of your headings, text and images, with none of the motion.
Blocks: group, heading, image, paragraph, patternpaste/marquee
Keywords: gallery, marquee, ticker, scroller, pictures, frames, rows, pointer

Promise: This variation embeds one of our blocks: install the companion plugin, then paste.

---

## The signature moment: the reader takes hold of the band

Every other gallery in the catalogue waits to be read. This one is a control.
Move the pointer into the left of the band and the pictures run backwards; hold
it in the middle and they stop, so a room can actually be looked at; push it
right and they hurry through at two and a half times their own speed. The two
rows run opposite ways the whole time, so the band never reads as one moving
block, and letting go glides it back to its resting speed rather than snapping.

The speed is 0.7, which is slow on purpose: a picture that cannot be recognised
before it leaves the frame is a picture nobody looked at.

## Why this is not gallery-spread or gallery-ledger

Those two lay pictures out to be studied: a grid and a ruled list, both still,
both showing everything at once. This one shows a few at a time and keeps
moving, which is the right shape when the pictures are a mood rather than a
catalogue, and the wrong one when a reader needs to compare them. If somebody
has to find a particular room, give them the grid.

It is also not `hero-wall-field`. That is an isometric plane the page scrolls
past; this is flat, horizontal, and driven by the pointer rather than by
travel down the page.

## What it inherits from your theme

Everything you can see. The band's ground is your section's ground, the plates
behind the pictures are your own text colour mixed down to seven per cent, the
hairline round each one is the same colour at sixteen, and the captions are your
theme's face at your theme's weight. The heading, the lede and the eyebrow take
your preset sizes. Nothing here states a colour or a family.

The eyebrow reaches for `role-label` and falls back to `contrast`, so in a
theme built by the theme tool it is the label colour that theme derived, and in
a stock theme it is your ordinary ink.

## What it decides for itself

Each row is 300px, stated rather than fluid, because a picture row whose height
follows its content changes height when the theme's line height does, and the
band is exactly its two rows plus the gap between them. Every picture takes the same landscape slot, 1.6 times the row
height, and fills it with `object-fit: cover`: a portrait photograph is honestly
cropped to a landscape slot rather than making one item twice the width of its
neighbours.

The gap is 28px and the edges of the band are dissolved, so pictures arrive and
leave rather than being cut at a straight line. The mask states no colour, so
whatever your section is painted stays visible through it.

Sixteen pictures dealt eight to a row. The block copies the run until it is
longer than the frame plus one whole cycle, so there is never bare ground in the
band, and it takes those copies away again when it stops.

## What needs the plugin

The running, the pointer control and the press-to-hold. Everything else is core
blocks: with the plugin inactive, or with motion switched off in the block's
inspector, the heading and lede are followed by the sixteen pictures as a plain
stack, each with its caption. Nothing you typed lives in a block setting, so
nothing you typed can disappear.

A reader who asks their system for reduced motion always gets the still band.

## What you change first

1. **The pictures.** Select the block and use "Fill items from media library" in
   its toolbar: pick sixteen at once and they are dealt into the items in order.
   A caption you have already written is never overwritten.
2. **The room names.** Each is an `h3` inside its item. They are headings so a
   screen reader can list them; if that upsets your page's heading order, change
   the level rather than the markup.
3. **The heading and the lede.** The lede says out loud what the pointer does,
   because a control nobody knows about is a control nobody uses. If you take
   that sentence out, take the control out too.
4. **The row height** (Item height) if your pictures want more room: the band
   follows it, so there is one number rather than two. And **Speed** if 0.7 is
   too slow for yours.
5. **Top speed and Still band** if the control feels too eager or too dead.
   Top speed is how fast the pointer can drive a row at the frame's edges;
   Still band is the width of the resting zone in the middle, as a percentage
   of the frame.

## 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.
