Ordinary scroll carries page content upward continuously; pinning briefly interrupts that flow for one section. Short pins use position: sticky; longer, multi-step pins switch the element to position: fixed via JS and reserve extra scroll height on the page for the duration of the pin. From the user's side, the wheel keeps turning but the screen holds still — only the artwork or text inside advances to the next step.
The length of a pinned section is chosen as (number of steps shown inside it) × (scroll distance needed per step) — to show four steps you might reserve roughly four viewport-heights of extra scroll space, then map that 0–1 progress to each step the same way scroll scrub does. GSAP ScrollTrigger's pin: true option is what popularized this pattern.
A pin that runs too long reads as "scrolling stopped working," and users bail. Keeping it to roughly 3–5 steps and 3–5 viewport-heights, with a visual hint that the next section is coming (its edge peeking in), keeps the exit honest.
When to use
Use it when several steps need to be explained in sequence on one screen — product feature walkthroughs, data stories. For a single element just appearing, scroll reveal is enough and pinning is overkill.