Scroll Stack is a hand you've already held.

Every section on this page is a card. Hold one, then watch the next one press flat over it.

02The question

You've scrolled through one of these and never known its name.

A pricing page. A feature tour. A portfolio that "snaps" between projects. It pinned. It held. The next thing covered it completely. That's the whole trick — and it has a name.

03How we got here

One CSS primitive, shipped three times, four years apart.

2013WebKit ships sticky
2015Codrops, first pass
2017Chrome 56 ships sticky
2017–2019CSS-Tricks canonizes it
2020GSAP ScrollTrigger
04Who built it

No single inventor. Four separate hands.

2013–2017 · the primitive

WebKit / Firefox / Chromium engineers

Shipped `position: sticky` across three engines independently, four years apart, without ever agreeing on timing — which is why this took until 2017 to be safe everywhere.

2015 & 2024 · the name

Codrops’ editorial team

Turned a CSS trick into a named effect category twice, nearly a decade apart, each time pushing the same flat-card premise further.

2017–2019 · the proof

Corey Ginnivan

An independent developer whose personal site is repeatedly cited as the real-world proof the effect works outside a CodePen demo.

2020 · the tool

GreenSock · Jack Doyle

ScrollTrigger’s `pin` option industrialized the JS-driven version, putting the mechanic on Apple-adjacent production sites at scale.

05Design DNA

Press it yourself.

Four cards, four moves. Press to advance the deck; release to pull the top card back off.

01Pin the section

Hold a section in the viewport for a fixed scroll distance — position: sticky, or a ScrollTrigger pin, does this for free.

Click to press the next card →
02Let the next one arrive

The incoming section starts at the bottom edge, fully opaque, and begins sliding up over the pinned one.

03Press it flat

It keeps pressing upward until it fully occludes the section beneath — a hard drop-shadow marks the exact seam.

04Release the old one

The moment the new card locks into place, the old one is let go and drops back into normal scroll flow underneath.

Surface01Pin the section
07Verdict

"It was never a page. It was always a hand of cards."