Motion Lab / Navs / sticky-pill / playful
Keep scrolling — the pill nav appears with a playful bounce.
// Mechanisme: nav-sticky-pill-playful import gsap from 'https://esm.sh/[email protected]'; import { ScrollTrigger } from 'https://esm.sh/[email protected]/ScrollTrigger'; gsap.registerPlugin(ScrollTrigger); const nav = document.querySelector('.pill-nav'); ScrollTrigger.create({ start: 'top -80px', onEnter: () => gsap.to(nav, { y: 0, scale: 1, autoAlpha: 1, duration: 0.9, ease: 'back.out(1.7)' }), onLeaveBack: () => gsap.to(nav, { y: -20, scale: 0.95, autoAlpha: 0, duration: 0.7, ease: 'back.in(1.7)' }) });
<!-- Skeleton: nav-sticky-pill-playful --> <nav class="pill-nav"> <a href="#">Home</a> <a href="#">Work</a> <a href="#">About</a> </nav>
/* Styling: nav-sticky-pill-playful */
.pill-nav {
position: fixed; top: 1.5rem; left: 50%; transform: translateX(-50%);
background: #FF4A1C; color: white; border-radius: 999px;
padding: 0.5rem 1.5rem; display: flex; gap: 1.5rem;
box-shadow: 0 4px 24px rgba(255,74,28,.3);
}