SuperAPI AI 工具集

micro-motion

设计与创作

查看项目

更新于 11-03 16:20

技能介绍

Micro-Motion 是一套面向界面动效的设计规范与技能,核心主张是:动效必须回答一个用户可感知的问题——确认变化、说明来源、或提示接下来该注意什么;如果回答不了,就应删除。

用途 该技能用于为界面添加有目的的过渡、反馈、编排或减少动效行为,尤其适用于动画可能引发卡顿、中断缺陷或隐藏内容风险的场景。它不适用于纯静态视觉样式或没有交互目的的装饰性动画。

主要能力

  1. 动效原则:优先使用合成器安全的属性,从 transform 和 opacity 开始;颜色、滤镜、SVG 或测量布局过渡需要明确目的并在目标设备上验证。缓动按方向选择:进入用 ease-out,退出用 ease-in,移动用 ease-in-out;linear 仅用于有目的的连续循环。
  2. 减少动效契约:将减少动效设计为等效状态,保留标签、选项、焦点和内容,移除空间移动。项目级策略定义一次,组件引用它。渐进显示时内容初始可见;观察器就绪后,JavaScript 仅标记屏幕外的待处理元素,绝不隐藏已相交元素;显示和页面恢复时移除标记。空间移动通过 prefers-reduced-motion: no-preference 门控。
  3. 时长与缓动令牌:使用语义化令牌,确认 120–160ms,插入/菜单 160–220ms,确认/路由 220–320ms。这些是起始区间,需在目标设备上测试。动效绝不延迟已提交状态、焦点或下一个键盘操作。
  4. 先定终态再谈样式:在入场前定义可用终态和中断策略。被取代的保存、路由、插入或关闭必须收敛到最新状态,不留下过时覆盖层、公告、焦点跳转或成功消息。动效反映归属,而非决定归属。
  5. 异步与路由处理:为每个异步请求打标签,仅当前所有者更新状态/实时公告;路由或覆盖层取消被取代的动画,以目标 DOM/焦点为准;列表变化在移动被中断时保持可读的 DOM 顺序。

使用方式 交付一份编排表,包含交互、目的、触发、时长/缓动、终态、中断规则和减少动效等效项,并添加一条针对 JS 禁用/恢复的安全行。默认使用 CSS;仅当手势、弹簧或布局协调确有需要时才使用库。自检清单包括:属性是否合成器安全;时长/缓动是否为令牌;减少动效路径是否测试;JS 禁用、延迟初始化与 bfcache 恢复时页面是否完整可读;快速重复、取消、过时完成与导航是否收敛到当前可用状态;是否存在滚动劫持或不受控循环;闪烁是否低于安全阈值。

适用场景 适用于需要 purposeful 过渡、反馈、编排或减少动效行为的界面开发,特别是动画可能引发卡顿、中断缺陷或隐藏内容风险的场景。

限制 不得在没有用户可感知目的的情况下添加动效。当不存在目的或中断策略时应停止。该技能接收 component-states、design-system-interview、deslop-ui、tasteroll,并发送至 a11y-pass、tastecheck-pass。输出为有目的的动效编排与令牌计划,证据为带状态、原因、修复、证据与来源的表格。