حرکت برای وب
Motion For The Web
Master the art of modern web animation, from subtle CSS transitions to full-blown JavaScript motion systems. This series starts with the fundamentals of smooth, accessible CSS motion, then builds through keyframes, scroll-linked animations, SVG techniques, and the Web Animations API, finishing with powerhouse libraries like Motion.dev, AnimeJS, and GSAP.
قسمتهای دوره
Introduction (1)
Never Force Motion Onto Users (3)
ترجیح حرکت کاهش یافته: Media Query CSS
4m 52sUse prefers-reduced-motion to respect users' motion preferences—implement a subtle default pulse and an optional energetic 'party' animation.
برچسبهای لینک HTML محافظتشده با حرکت
3m 33sLoad animation styles only when motion's allowed via link media='(prefers-reduced-motion: no-preference)', keeping sites lightweight and accessible.
matchMedia() در جاوااسکریپت
2m 48sUse window.matchMedia to detect prefers-reduced-motion in real time and update app behavior instantly—no page reload needed.
CSS Transitions (6)
یک کلمه سریع در مورد عملکرد انیمیشن
3m 53sLearn why animating transform and opacity gives smooth GPU-accelerated motion, while animating layout properties causes jank—practical performance tips.
ترنزیشنهای CSS ۱۰۱
7m 37sMaster CSS transitions—control duration and properties, combine effects, handle hovers, and define transitions on base elements for smooth motion.
توابع زمانبندی ترنزیشن
6m 35sMaster transition-timing-function: learn ease-in/out, visualize easing curves, and craft custom cubic-bezier easings for expressive CSS motion.
توابع زمانبندی ترکیبی
5m 59sCombine custom easings per property to layer rotation, color, and border-radius; use steps() and Open Props presets for playful, expressive motion.
نحو خلاصهشده ترنزیشن
5mMaster transition shorthand and delay to stagger effects, chain per-property transitions, and precisely control timing in one clean rule.
ترنزیشن در ورود و خروج
8m 15sLearn CSS enter/leave transitions with transition-behavior and @starting-style—create smooth, declarative popover motion (no JavaScript needed).
CSS Animations (8)
انیمیشنهای Keyframe ۱۰۱
3m 59sLearn CSS @keyframes and animation—create keyframe animations, control duration, iterations, direction, and timing for smooth motion.
مراحل Keyframe
6m 28sMaster intermediate CSS @keyframes: choreograph multi-step animations, freeze frames, and layer transforms for expressive, story-like motion.
حالت پر کردن انیمیشن
6m 16sMaster animation-fill-mode to keep end states, add staggered delays, reverse motion, and stop flickers—make CSS animations behave predictably.
انیمیشن در امتداد یک مسیر
10m 17sAnimate elements along custom paths with offset-path - no JS. Follow SVG paths from Figma, reuse shapes with CSS variables, and animate via clip-path.
انیمیشن عناصر وقتی در نمای دید هستند
6m 42sUse CSS animation-timeline with view() to trigger fade and scale as elements enter the viewport, define custom ranges, and skip JavaScript.
همگامسازی انیمیشنها با اسکرول
5m 9sSync animations to scroll with CSS scroll(): create scroll-driven progress bars, target containers, and smooth, declarative motion without JS.
ترنزیشنهای نمایش (صفحه)
8m 39sUse the View Transitions API: add @view-transition navigation: auto for automatic page crossfades and element morphs—make reloads feel like SPAs.
نامهای ترنزیشن نمایش پویا
7m 15sGenerate unique view-transition names per item to enable smooth list-to-post page animations and polished nav underline transitions.
JavaScript Animations (7)
یک دنیای کاملاً جدید
4m 3sGo beyond CSS - discover JavaScript animation: interactive gestures, physics-based motion, and when to reach for GSAP, Anime.js, or Motion.
حلقههای انیمیشن در جاوااسکریپت
6m 9sLearn JS animation loops: use setInterval to animate a square, calculate smooth 60FPS timing, and stop cleanly with clearInterval.
نرخ فریم انیمیشن ضمنی
5m 51sUse requestAnimationFrame to sync animation with display refresh, save CPU/battery, prevent skipped frames, and ensure smooth motion.
انیمیشنهای Keyframe در جاوااسکریپت (WAAPI)
8m 24sAnimate with the Web Animations API: define keyframes in JS, control easing, offsets, iterations, and choreograph complex sequences declaratively.
کنترلهای پخش انیمیشن
5m 30sControl Web Animations with play, pause, reverse and UI buttons—turn keyframes into interactive experiences using the Web Animations API.
جابجایی نوار پیشرفت انیمیشن
8m 42sScrub animation timelines with a range slider - use currentTime and getTiming to sync real-time playback for precise, interactive control.
پرسوجوی پیشرفت انیمیشن
6m 40sRead live animation progress via getComputedTiming(), sync updates with requestAnimationFrame, and display precise percent for reactive UI.
SVG Animations (2)
رسم خط SVG
8m 48sAnimate SVG paths to appear hand-drawn using stroke-dasharray/offset—measure path length, handle rounded caps, and reveal with pure CSS.
اسپینر متحرک
8m 25sCreate an organic SVG loading spinner with CSS keyframes, animate stroke-dasharray, rotation, easing, and offsets for smooth, lively motion.
JS Animation Libraries (15)
یک تور از چشمانداز
1m 51sExplore JS animation libraries - GSAP, Anime.js, Motion.dev - compare syntax, performance and uses, and when to pick a library vs Web Animations API.
Discover Motion.dev, a lightweight, framework-agnostic animation toolkit with spring physics, staggered transitions, and blazing performance.
Motion.dev: انیمیشن
5m 25sRebuild Web Animations with Motion.dev's terse API—one-line animations, smart defaults, springy easing and easy sequencing for pro motion.
Motion.dev: فنرها
4m 45sUse Motion.dev springs to craft realistic, physics-based motion, tune stiffness, damping, velocity for snappy to soft animations and natural feel.
Motion.dev: دنبالهها
4m 46sOrchestrate multi-step Motion.dev sequences - chain selectors, timing, and per-step spring settings to build expressive, lively animations quickly.
Motion.dev: هاور
7m 14sMake Motion.dev animations interactive: use hover() to pause/resume, add scale/rotation effects, and create tactile, physics-aware hover responses.
Discover Anime.js: an approachable, powerful animation engine—staggering, SVG, timelines, CSS variable animation and live demos to learn fast.
Anime.js: قابل کشیدن
6m 57sBuild an Anime.js draggable that snaps to a 64px grid—use createDraggable, tweak drag physics, springy release easing, bounds and modifiers.
Anime.js: قابل کشیدن بخش ۲
4m 44sExtend Anime.js draggables with modifiers, callbacks, relative rotations, and spring easing for precise, bouncy, interactive motion control.
Discover GSAP - learn core concepts, plugins, timelines, and scroll triggers to create professional, high-performance web animations.
GSAP: تایملاین
7m 32sMaster GSAP timelines to sequence and label tweens, control progress, and orchestrate complex, predictable animations with ease.
GSAP: ScrollTrigger
9m 7sLearn GSAP ScrollTrigger to sync animations with scroll: set triggers, use toggle actions, and debug markers for smooth, cinematic motion.
GSAP: پیمایش اسکرول
3m 43sMaster GSAP ScrollTrigger scrub - tie animation to scroll for smooth, responsive parallax with easing, inertia, and polished motion.
GSAP: ScrollSmoother
6m 11sMaster GSAP ScrollSmoother to add buttery-smooth, accessible scroll inertia—set structure, tweak smoothing/easing, and elevate your site's motion.
GSAP: پارالاکس به طرز خندهداری آسان
6m 42sCreate silky, lightweight parallax with GSAP ScrollSmoother—use simple data-speed/data-lag or auto mode to build layered, natural motion fast.




