# Pop In (`.sds-scroll-pop-in`)

Snaps from zero to overshoot then settles with a springy multi-step pop. Scroll animation in SDS Motion Forge v5.0.0. It plays once when scrolled into view.

- Page: https://sds-motion-forge.netlify.app/animations/scroll-pop-in/
- Category: Scroll (https://sds-motion-forge.netlify.app/categories/scroll/)
- Animated properties: opacity, transform
- Compositor-only: yes
- Needs child elements: no
- Needs per-character spans: no
- JavaScript: sds-scroll (optional)

## Use it

```html
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@salkomdesignstudio/sds-motion-forge/dist/categories/scroll.min.css" />

<div class="sds-scroll-pop-in" data-sds>Scrolls into view</div>
```

## How it works

Plays when the element enters the viewport (gated by data-sds + the scroll engine, or fire it yourself by adding the class). It animates opacity and movement and scale (transform) — compositor-only, so it never causes page reflow. Timing is fixed for this effect, but you can still override animation-duration/timing-function on the element.

## Related

- [Elastic Pop](https://sds-motion-forge.netlify.app/animations/scroll-elastic-pop/)
- [Neon Pop](https://sds-motion-forge.netlify.app/animations/scroll-neon-pop/)
- [Stagger Pop](https://sds-motion-forge.netlify.app/animations/scroll-stagger-pop/)
- [Perspective Left](https://sds-motion-forge.netlify.app/animations/scroll-perspective-left/)
- [Phantom Rise](https://sds-motion-forge.netlify.app/animations/scroll-phantom/)
- [Pixel In](https://sds-motion-forge.netlify.app/animations/scroll-pixel-in/)
- [Prism Reveal](https://sds-motion-forge.netlify.app/animations/scroll-prism/)
- [Punch](https://sds-motion-forge.netlify.app/animations/scroll-punch/)
