用途:这是一个网页动画设计与实现指南技能,依据 Emil Kowalski 的「Animations on the Web」课程整理,帮助在用户询问动画或动效相关问题时给出自然、有目的的动画方案。
主要能力与决策规则:提供缓动蓝图(ease-out 用于进入/退出,ease-in-out 用于屏内移动,ease 用于悬停与颜色过渡,linear 仅用于匀速动画,ease-in 几乎不用)、时长建议(微交互 100-150ms,标准 UI 150-250ms,模态框与抽屉 200-300ms,整体不超过 300ms)、频率判断(每天被看到 100 次以上不做动画)、弹簧动画(Apple 式 duration+bounce 配置、弹跳一般 0.1-0.3、可中断性)、性能黄金法则(只动 transform 与 opacity,用 will-change,避免动 padding/margin/height/width 与大于 20px 的模糊)。
使用方式:技能首次被调用且无具体问题时,只回复“I'm ready to help you with animations based on Emil Kowalski's animations.dev course.”。审查动画时必须用 markdown 表格,列为 Before 与 After,每行一个问题;禁止用 Before:/After: 分行列表。落地实现包含 prefers-reduced-motion 媒体查询、Framer Motion 的 useReducedMotion、触屏设备用 @media (hover: hover) and (pointer: fine) 禁用悬停动画。
适用场景:下拉、模态框、提示、抽屉、手势拖拽、缓动与时长选择、性能排查与无障碍适配。
限制:所有建议以资料为准,未提供具体价格、平台或安装命令等信息;具体项目实现细节需结合实际代码验证。