
Amicro滚动动画实战3个组件打造『会呼吸』的滚动页面体验【免费下载链接】Amicro--Micro-transitions-项目地址: https://gitcode.com/gh_mirrors/am/Amicro--Micro-transitions-Amicro 是一个基于 Motion 构建的 React 微交互动画组件库提供开箱即用的滚动动画、入场过渡与卡片交互组件。这篇文章将带你用 3 个滚动动画组件——ScrollReveal、StickyReveal 和 ProgressIndicator——快速打造“会呼吸”的滚动页面体验无需手写复杂的动画逻辑几行代码即可让页面内容随滚动渐显、吸附切换与进度反馈显著提升网站的视觉层次感。↑ 上面这张横版风景图项目内置素材 misty_forest_bg非常适合放入 StickyReveal 的粘性卡片中作为滚动切换时的视觉内容。为什么选择 Amicro 滚动动画组件很多静态页面的通病是内容“一次性铺开”用户滚动时没有任何反馈。而会呼吸的滚动页面应该做到三件事内容渐显——元素进入视口时优雅浮现引导视线内容吸附——关键区域滚动时保持粘性展示像 Apple 官网那样逐段切换进度反馈——顶部进度条随时告诉用户“我还剩多少内容”。Amicro 把这三种能力封装成 3 个组件全部放在registry/ui/scroll/目录下支持通过 shadcn 注册表一键复制进你的项目零运行时依赖负担。组件效果源码位置ScrollReveal元素滚入视口时渐显浮现scroll-reveal.tsxStickyReveal左侧文案滚动、右侧卡片粘性切换sticky-reveal.tsxProgressIndicator顶部弹簧式滚动进度条progress-indicator.tsx组件一ScrollReveal 视口入场渐显动画ScrollReveal 是滚动动画中最基础也最常用的一块积木。它只需用一段 JSX 包裹任意内容元素就会在滚动进入视口的那一刻从下方 30px 外、95% 缩放的半透明状态平滑地“落位”只触发一次内置once: true视口策略元素露出后不会反复闪烁提前触发margin: -15%让动画在元素离视口还有 15% 距离时就开始衔接更自然参数可调duration时长、yOffset/xOffset位移、scale缩放全部暴露为属性无需改源码缓动讲究默认使用 easeOutExpo 曲线收尾干脆符合高级感审美。想横向入场就传xOffset想要更强烈的弹起感就调大yOffset一个组件可以覆盖大多数渐显场景。组件二StickyReveal Apple 风格粘性滚动展示StickyReveal 是打造“产品详情页”氛围感的利器参考 Apple 官网经典的左文右图结构左栏每一段文案占据约 50vh 高度随滚动依次上移当前段落高亮、其余段落淡出至 30% 透明度右栏一个 60vh 高的粘性容器始终停在视口内内部卡片随左栏段落切换而淡入缩放实现“滚到哪、展示哪”联动原理通过useScroll追踪整个区块的滚动进度按段落均分切点自动计算当前激活卡片整个过程不依赖任何第三方滚动库。使用时只需传入content数组title / description / 自定义节点文章、功能介绍、产品卖点等场景都能直接套用。组件三ProgressIndicator 弹性滚动进度条ProgressIndicator 是一条固定在页面顶部的细进度条随用户阅读进度从左向右延展基于useScroll获取 0–1 的滚动进度再经过useSpring弹簧处理stiffness 100 / damping 30进度条会带一点“追涨”的弹性感滚动停止时还有细微回弹——这正是“呼吸感”的来源color、height均可自定义默认蓝色 4px改成品牌色即可无缝融入页面。最快安装方法shadcn 注册表一行命令Amicro 的滚动动画组件已接入 shadcn/ui 注册表安装步骤如下在项目的components.json中配置命名空间{ registries: { amicro: https://raw.githubusercontent.com/Subhan-code/Amicro--Micro-transitions-/main/registry/{name}.json } }用 shadcn CLI 按需拉取组件npx shadcn add amicro/scroll-reveal npx shadcn add amicro/sticky-reveal npx shadcn add amicro/progress-indicator源码会被复制为.tsx文件放进components/amicro/你可以自由定制。组件元数据可参考 scroll-reveal.json、sticky-reveal.json、progress-indicator.json。环境要求Node.js ≥ 18、React 18/19、Tailwind CSS v3/v4、依赖motion或framer-motion。若你希望自己实现进度追踪项目还提供原生 Hook use-scroll-progress.ts 可辅助学习。实战建议3个组件如何组合出呼吸感首屏顶部挂载ProgressIndicator /给用户持续的位置反馈功能介绍区用ScrollReveal逐个包裹卡片配合不同的xOffset营造左右交替入场核心卖点区用StickyReveal展示 3–5 组图文把最打动人的内容“粘”在用户眼前细节滚动渐显时长统一控制在 0.5–0.8s避免动画抢戏让内容始终是第一主角。总结用 ScrollReveal 做渐显、用 StickyReveal 做粘性展示、用 ProgressIndicator 做进度反馈3 个组件覆盖了滚动动画的核心场景。Amicro 以 copy-to-code 的方式把完整源码交到你手里既能开箱即用也能按品牌风格深度定制——现在就可以在你的 React / Next.js / Vite 项目中动手让页面真正“呼吸”起来。【免费下载链接】Amicro--Micro-transitions-项目地址: https://gitcode.com/gh_mirrors/am/Amicro--Micro-transitions-创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考