VIPEX Motion · 05 Scroll

Scroll Stack

One engine, four stacking modes: sections that cover each other, cards that pile with depth, a pinned crossfade stage and a media column that syncs to your copy. Native scroll only — position:sticky plus a progress calculator.

scroll ↓ · press H to toggle the panel

01

cover-stack

Full sections pin at the top. The next one slides over the previous, which scales down, dims and drifts up. Covered layers stop catching the pointer.

Arrive

this section pins — the next slides over it

Descend

the layer beneath scales, dims and drifts

Break

any background works — even loud ones

Settle

last layer — never dimmed, never disabled

02

card-stack

Cards pile up with a per-card top offset. Each covered card shrinks from its stuck edge, so the stack reads as depth. Overlap slider sets the stagger.

Card 01

State the problem

Placeholder copy. Each card is just a child of the container — the engine handles sticky offsets, z-order, scale and dim.

Card 02

Show the approach

Placeholder copy. The card behind starts shrinking the moment this one enters the viewport, easing the hand-off.

Card 03

Prove the result

Placeholder copy. Transform and opacity only — no layout thrash, no scroll hijacking.

Card 04

Close the loop

Placeholder copy. The last card never dims and never loses pointer events.

03

pinned-crossfade

The container pins for a fixed scroll distance while its panels crossfade one after another. The header (marked with data-stack-header) drifts up as you move through.

One idea, told in three passes.
01

Set the scene

Each panel owns an equal slice of the pin. Opacity ramps in, holds, then hands over to the next panel.

02

Turn the argument

The crossfade width is one option. Widen it for slow dissolves, tighten it for hard cuts.

03

Land the point

The last panel holds to the end of the pin instead of fading out, so the section exits on a full frame.

04

media-sync

A sticky media column crossfades to match whichever text step sits in the center band of the viewport. On small screens the media stays inline with each step.

01

Discover

Placeholder copy. Mark the media inside each step with data-stack-media — the engine lifts it into the sticky frame.

02

Define

Placeholder copy. As this step crosses the viewport center, the frame crossfades to its media.

03

Build

Placeholder copy. The active band height is an option — narrow it for precise switching, widen it for lazy switching.

04

Ship

Placeholder copy. Below the mobile breakpoint the engine is inert and the media renders inline — no branching needed in your markup.