April 8, 2026/Simple/Scroll & Parallax

Parallax Image in Card

Image inside a fixed-height card travels at a different speed to the card as you scroll, creating a depth effect. Image is 120% height of the card container to give room for movement.

import ParallaxImageInCard from "./index.jsx";
import styles from "./demo.module.css";

const CARDS = [
  { title: "Sheabinta", description: "Headless Shopify storefront", image: "/demo-assets/kickandbass.png", href: "#" },
  { title: "PATHS", description: "Nonprofit website", image: "/demo-assets/westend.png", href: "#" },
  { title: "Socialstats", description: "Brand identity & web", image: "/demo-assets/socialstats.png", href: "#" },
  { title: "Kevin Davis", description: "Artist portfolio", image: "/demo-assets/keviindavis.png", href: "#" },
];

export default function ParallaxImageInCardDemo() {
  return (
    <div>
      {/* Header section — cards start below the fold */}
      <section className={styles.header}>
        <p className={styles.headerLabel}>Selected work</p>
        <h2 className={styles.headerTitle}>Scroll down to see the parallax images in each card.</h2>
      </section>

      {/* Component — cards scroll into view with parallax background */}
      <section className={styles.content}>
        <ParallaxImageInCard cards={CARDS} />
      </section>
    </div>
  );
}
  • framer-motion

Related Components

NEWTODAY
Exo Ape Play Reelscroll-parallax
NEW5D AGO
Garoa Video Scrollscroll-parallax
NEW5D AGO
Relai Parallax Scroll Heroscroll-parallax