ui-motion
Skill42 starsChanged 5 days agoMITView on GitHub
UI/UX动效交互 —— 给 AI 编码助手用的高级交互动效技能。当用户要做网页、H5、小程序或 App 界面,或者要加弹出、展开、切换、加载、表单输入、粒子、图表、滚动、评论区、反馈等交互动效时使用。它让界面"动得高级",而不是"能动就行"。
9 other projects use a version of this.
Adopted by
Most recently taken up by
- whoamnesia/astudio-motiontheir own version, first seen Nov 8, 2026
- neijix/AICodeFactorytheir own version, first seen Nov 1, 2026
- qxryz/workflowgeneratortheir own version, first seen Oct 25, 2026
- thewyattbrocato/design-and-copy-skillstheir own version, first seen Oct 17, 2026
- adnanrahim110/ui-motion-skilltheir own version, first seen Oct 15, 2026
- designhouseme/AdvancedSkillstheir own version, first seen Oct 13, 2026
Other versions9 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 9
- qxryz/workflowgenerator★ 48same name
- thakur698/universal-ui-skills★ 5same name
- Adhamxon/claude-code-skills★ 2same name
- dafaalz/agent-skills★ 2same name
- thewyattbrocato/design-and-copy-skills★ 2same name
- designhouseme/AdvancedSkills★ 1same name
- whoamnesia/astudio-motion★ 1same name
- adnanrahim110/ui-motion-skill★ 0same name
- neijix/AICodeFactory★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
Files
UI/UX动效交互
你的目标:做出的交互要有细节、有手感、经得起慢放,不是"点一下就硬切"。
工作方式
- 先读需求,用一句大白话告诉用户你打算加哪几个动效、为什么。用户确认后再写代码。
- 从
references/motions.md动效库里挑最合适的写法,严格按里面的参数实现(时长、曲线、间隔)。库里没有的,按references/foundations.md的底线规则自己设计。 - 交付前按
references/anti-cheap.md逐条自检,不合格就改。
场景判断(怎么选动效)
用户说要做某个功能时,按下面的对照表快速判断该用哪个动效:
| 用户需求 | 推荐动效 | 不用的情况 |
| 悬浮按钮展开菜单 | 变形菜单 Morph Menu | 菜单项超过 6 个 / 需要二级菜单 |
| 列表卡片点开详情 | 卡片展开 Expand Card | 表格行 / 详情页和列表差别太大 |
| 网格卡片展开成整页(设置页/详情页) | 卡片变整页 Card Morph | 目标页信息结构和卡片完全不同 / 需要大量数据 |
| 点赞、收藏、关注 | 点赞爆粒子 Like Burst | 严肃场合 / 按钮很小 |
| 提交表单、支付、保存 | 提交按钮三连变 Submit Morph | 即时操作 / 不需要反馈 |
| 设置开关、深色模式 | 果冻开关 Jelly Toggle | 三态/多选 / 需要立即显示结果 |
| 删除、注销、清空 | 长按确认 Hold to Confirm | 非危险操作 / 需要二次确认 / 批量操作 |
| 列表下拉获取新内容 | 下拉刷新 Pull to Refresh | 内容很少变化 / 实时推送 / 电脑网页为主 |
| 列表单行快捷删除、归档 | 左滑删除 Swipe to Delete | 重要数据不可恢复 / 电脑网页为主 / 行本身能横滑 |
| 一张张二选一(喜欢/跳过) | 卡片左右滑 Swipe Cards | 需要对比多个选项 / 超过两种结果 |
| 用户自己调整列表顺序 | 拖拽排序 Drag to Reorder | 列表有固定排序 / 条目上百条 |
| App / 小程序底部主导航 | 水滴导航 Liquid Tab Bar | Tab 超过 5 个 / 电脑网页顶部导航 |
| 选规格、选日期、分享、筛选面板 | 底部弹窗 Bottom Sheet | 内容像独立页面一样长 / 电脑大屏 / 只是一句提示 |
| 弹层里选完一项要进入完整二级页 | 弹层长成整页 Sheet to Screen | 只是切换筛选条件 / 需要横屏分栏 |
| 二级页返回上一页 | 返回视差 Back Parallax | 平级切换 / 返回后马上要再进同一页 |
| 首页大图标入口随滚动收成顶部标签栏 | 网格塌缩 Grid to Tabs | 入口只有 3–4 个 / 页面没有滚动 |
| 列表行的图标要延续到下一页 | 图标飞行 Icon Flight | 两页图标造型不同 / 跨多个层级 |
| 底部导航"更多"展开次级菜单 | 导航长成面板 Bar to Panel | 面板内容很少 / 已有底部弹层打开 |
| 头图 + 大标题的详情页 | 吸顶大标题 Collapsing Header | 没有头图 / 表格表单类页面 |
| 顶部分段标签 + 左右滑内容页 | 毛毛虫标签 Segmented Tabs | 标签超过 5 个 / 每页内容本身要横滑 |
| 信息流、列表、详情页首次加载 | 骨架屏扫光 Skeleton Shimmer | 加载 <300ms / 版面结构不固定 |
| 照片墙、商品图、头图等网络图片 | 模糊到清晰 Blur-up Image | 图标、Logo / 已缓存的图 |
| 分页的长列表滑到底 | 加载更多 Infinite Scroll | 需要跳页或看总数 / 底部有重要内容 |
| AI 对话、边生成边显示的回复 | AI 流式回复 Streaming Reply | 回复很短 / 代码块、表格 |
| 外卖、商品、服务评价打分 | 星级评分 Star Rating | 1–10 分精确打分 / 只有好坏两种 / 只读展示 |
| 注册、设置或修改密码 | 密码强度条 Strength Meter | 登录页密码框 / 数字支付密码 |
| 邮箱、用户名、手机号等格式校验或查重 | 实时打勾 Inline Validation | 密码框 / 没有对错的自由文本 |
| 登录、注册、资料等文本输入框 | 浮动标签 Floating Label | 搜索框 / 很矮的行内编辑框 |
| 密码错误、验证码错误等提交后报错 | 输错摇头 Shake on Error | 还在输入时的格式问题 / 网络或服务器错误 |
| 短信、邮箱验证码,两步验证 | 验证码格子 OTP Input | 长度不固定或含字母的长码 |
| 打卡、支付、完成任务、升级等庆祝时刻 | 撒花庆祝 Confetti | 普通保存提交 / 负面结果 / 高频操作 |
| 删除消息、撤回、清除卡片想要仪式感 | 碎沙删除 Disintegrate | 批量删除 / 元素很大、低端设备 |
| 官网首页、发布页、启动页的品牌 Logo | 粒子 Logo Particle Logo | 后台和表单页 / Logo 很小 / 首屏要立刻看清 |
| 记账、运动、销售等柱状图第一次出现 | 柱子长出来 Bar Grow | 柱子超过 20 根 / 实时刷新的监控图 |
| 收益、体重、股价等走势折线图,拖动看数 | 折线画出来 Line Draw + Scrub | 列表里的迷你走势线 / 数据点少于 5 个 |
| 支出分类、流量来源等占比环形图 | 圆环转出来 Donut | 分类超过 7 个 / 需要精确比较大小 |
| 看板切换周/月/年、切换指标、筛选后刷新 | 切换变形 Data Morph | 前后数据完全不相关 / 上百根柱子 |
| 首页、列表、落地页往下滑时内容出现 | 依次浮现 Scroll Reveal | 首屏内容 / 聊天、表格等要立刻看清的内容 |
| 官网首屏、活动页想要立体纵深感 | 视差纵深 Parallax | 后台、表单页 / 低端手机为主的长列表 |
| 品牌故事、产品理念的一大段核心文案 | 逐字点亮 Scroll Text Reveal | 正文、说明文档 / 超过 3 行的普通段落 |
| 产品发布页、功能介绍分几段讲卖点 | 钉住换图 Sticky Scroll | 手机窄屏没有左右空间 / 卖点少于 3 个 |
| 官网首屏、落地页的主按钮(电脑端悬停) | 磁吸按钮 Magnetic Button | 手机和小程序 / 一排很多按钮挨在一起 |
| 电商加入购物车 | 加购飞入 Add to Cart Fly | 批量加购 / 屏幕上看不到购物车图标 |
| 音乐、播客、视频的播放暂停 | 播放暂停变形 Play ⇄ Pause Morph | 16px 以下小图标 / 列表里非当前播放的歌 |
| App 右下角加号展开几个快捷操作 | 悬浮按钮展开 FAB Fan Menu(想要按钮变成面板就用变形菜单) | 选项超过 5 个 / 有二级菜单 |
| 代码、邀请码、链接、优惠码的复制按钮 | 复制变勾 Copy → Copied | 按钮在菜单里一点就关 |
| App、小程序打开时的启动页 | 启动页进首页 Splash → Home | 热启动 / 首页数据要等很久 |
| 点开详情、切换页面时的等待 | 顶部进度条 Top Progress Bar | 加载 <300ms / 首次加载能用骨架屏 |
| 发帖、发朋友圈的多张图片上传 | 照片上传进度 Upload Progress | 几分钟的大视频上传 |
| 聊天发消息、评论、点赞等大概率成功的操作 | 消息秒发 Optimistic Send | 支付、下单等必须等结果的操作 |
| 打车、派单、配对等等待对方响应 | 叫车等待 Ride Matching | 等待 <1 秒 / 没有地图或空间关系 |
| 评论、动态、群聊里输入 @ 提及好友 | @好友联想 Mention Picker | 只能 @ 固定几个人 / 不能插入富文本 |
| 评论下的二级回复、线程回复展开收起 | 展开楼中楼 Thread Expand | 一次展开超过 20 条 / 回复要跳新页面看 |
| 评论、消息的表情回应 | 长按表情回应 Reaction Picker(只有点赞就用点赞爆粒子) | 只有一种回应 / 长按已被占用 |
| AI 绘图、修图、滤镜等要等几秒才出图 | AI 出图显影 AI Image Generating | 不到 1 秒就出图 / 拿不到真实进度 |
| 下载 App、游戏、素材包、离线地图 | 图标扇形下载 App Icon Download | 没有图标可扫亮 / 同时下载很多个 |
| 视频、音频播放时网慢缓冲 | 视频缓冲 Video Buffering | 首次打开还没画面 / 直播实时流 |
| 外卖、快递、订单、审批等多步骤状态 | 外卖接力进度 Order Progress | 步骤超过 6 个 / 状态会回退或分叉 |
| 列表、详情页加载失败要重试 | 加载失败重试 Error → Retry | 局部小组件失败 / 提交支付等写操作失败 |
| 信息流浏览时有新内容到达 | 新内容提示条 New Posts Pill | 聊天窗口 / 比分行情等必须立刻看到的 |
| 搜索框输入后加载结果 | 搜索结果加载 Search Loading | 要几秒以上的复杂查询 / 本地少量数据即时过滤 |
| 网络断开与恢复 | 断网提示 Offline Banner | 离线完全不能用的功能 / 只是网慢 |
| 在别的页面时收到新消息、新评论 | 顶部消息横幅 In-app Banner | 正在当前聊天窗口里 / 必须马上处理的报警(用全屏弹窗) |
| 底部导航、图标上的未读数量 | 红点数字角标 Badge Count | 数量没有意义只需提醒(用小红点) / 一屏里几十个角标 |
| 删除、归档、移出后给反悔机会 | 撤销提示条 Toast with Undo | 删除后无法恢复的操作(用长按确认) / 支付等不能撤回的 |
| 通知中心、消息盒子里同类通知很多 | 通知堆叠展开 Stacked Notifications | 只有 1–2 条 / 每条都要立刻看全的重要通知 |
| 首次打开、新功能上线,告诉用户按钮在哪 | 聚光灯功能引导 Spotlight Coach Mark | 只有 1 个主按钮 / 每次打开都弹 |
| 首次安装的几页功能介绍 | 欢迎页滑动引导 Onboarding Carousel | 打开就要干活的工具类 / 超过 4 页 |
| 待办、笔记、收藏等列表第一次是空的 | 空状态引导 Empty State CTA | 搜索无结果、加载失败 / 列表已有内容 |
| 申请通知、定位、相机等系统权限之前 | 权限请求前说明 Permission Pre-prompt | 没权限完全不能用的核心功能 / 用户已拒绝过 |
| 商品卡、文章卡等按下去要有分量感 | 按下微倾 Press Tilt | 卡片很小 / 卡片本身要横向滑动 |
| 背单词、会员卡、答案卡点一下看另一面 | 卡片翻面 Flip Card | 正反面内容量差很大 / 列表里大量卡片同时翻 |
| 首页推荐、优惠券横向卡片轮播 | 吸附轮播 Snap Carousel | 要并排对比多张卡片 / 需要页码精确跳转 |
| 笔记、聊天列表长按卡片弹收藏/分享/删除菜单 | 长按浮起 Long-press Lift | 高频操作不适合长按门槛 / 桌面网页无长按手势 |
| 图片社区、相册网格点一张图看大图 | 点开放大 Tap to Zoom | 列表项不是图片本身 / 需要跳到完全不同的详情页 |
| 商品详情页图片要放大看细节 | 双指缩放 Pinch to Zoom | 图片很小细节不多 / 需要固定坐标系做标注对比 |
| 相册、看图页需要手势关闭返回列表 | 下滑关闭 Swipe Down to Dismiss | 下方有纵向可滚动内容 / 横屏场景 |
| 商品详情页多图、相册查看器左右切图 | 多图左右滑 Gallery Swipe | 只有 1–2 张图 / 需要同时对比查看 |
| 搜索入口点图标展开输入框 | 搜索框展开 Search Expand | 搜索入口本身已是通栏输入框 |
| 搜索框输入时下方联想词/热门标签 | 热门标签联想 Suggestion Chips | 联想词需要明显网络延迟 / 候选超过 20 条要滚动查看 |
| 商品/内容列表点筛选按钮弹出条件面板 | 筛选面板滑出 Filter Panel | 筛选条件只有 1–2 个简单选项 / 电脑端大屏常驻侧边栏 |
| 商品/搜索结果列表切换排序方式 | 结果排序切换 Sort Switch | 列表项超过 50 条且排序频繁触发 / 排序和筛选同时导致数量变化 |
| 购物车、下单页改购买数量 | 数量加减 Stepper | 数量范围很大(上百)要直接输入 / 只能买 1 件 |
| 商品筛选选价格区间 | 双头价格滑块 Range Slider | 只需要一个上限值 / 价格跨度极大需要精确输入 |
| 订酒店、租车、请假选开始和结束日期 | 日历选区间 Date Range | 只选单个日期 / 跨度经常超过 2 个月 |
| 选生日、时间、地区等多列选项 | 滚轮选择器 Wheel Picker | 选项只有 2–3 个 / 电脑端用鼠标操作为主 |
| 游客点收藏/评论/关注时要求登录 | 登录弹窗 Login Modal | 一打开就必须登录 / 电脑大屏 |
| 验证码登录和密码登录来回切换 | 登录方式切换 Method Switch | 只有一种登录方式 / 两种表单完全不同 |
| 密码框显示/隐藏密码 | 密码小眼睛 Password Peek | 数字支付密码 / 超长密码 |
| 获取短信验证码后的重发倒计时 | 验证码倒计时 Resend Timer | 不需要等待的重发 |
| 注册、下单、商家入驻等多步流程顶部进度 | 步骤圆点进度条 Step Dots Progress | 步骤超过 6 个 / 可以跳步不按顺序走 |
| 打卡、上传、运动记录等完成度展示 | 环形进度+数字滚动 Circular Progress Ring | 需要同时展示多个分类占比(用圆环转出来) / 进度会反复升降 |
| 问卷、支付、商家入驻等分段流程进度 | 分段进度条平滑过渡 Segmented Progress Bar | 步骤超过 8 段 / 可以随意跳到任意一段 |
| 完善资料、新手任务等清单打勾页面 | 清单打勾完成度 Checklist Progress | 清单项目超过 10 项 / 打勾触发不可逆重要操作 |
| FAQ、设置项、长列表点标题展开答案 | 手风琴展开 Accordion | 内容很短不值得折叠 / 需要多项同时展开对比 |
| 长文、笔记、评论「...展开全文 / 收起」 | 展开全文 Read More | 内容本来就很短 / 必须一次看全的正文 |
| 地图、音乐、列表页底部可拖拽面板 | 底部抽屉拖拽 Drag Sheet | 只需要打开/关闭两态 / 内容像独立页面一样长(用底部弹窗) |
| 钱包余额、收益、到账金额变化 | 金额平滑滚动 Count-up Rolling | 实时高频跳动的数 / 需要立刻读准的编号 |
| 点赞、收藏、关注数 +1 | 点赞数翻滚 Odometer Roll | 一次变化很大的数(用金额平滑滚动) |
| 打卡、任务完成、游戏结算拿积分 | 积分庆祝累加 Score Ticker | 严肃财务医疗数据 / 每次操作都触发 |
| 数据看板、总结页统计卡入场 | 统计数字入场 Stat Count-in | 反复进出的页面每次都播 / 数字为 0 |
| 删除/危险操作要二次确认 | 确认对话框 Confirm Dialog | 无风险的普通提示(用 Toast) / 高频连续确认 |
| 卡片右上角更多操作 | 下拉操作菜单 Popover Menu | 操作项超过 7、8 条(用底部操作表) / 需要强确认 |
| 长按列表项/卡片出操作 | 长按上下文菜单 Context Menu | 需要立即触发不希望延时 / 桌面端右键更合适 |
| 分享/多个操作选项从底部出 | 底部操作表 Action Sheet | 只有一两个操作(用下拉菜单) / 桌面宽屏 |
| 音乐 App 播放页的黑胶封面、唱针 | 黑胶封面旋转 Vinyl Spin | 静态封面展示 / 一屏多个同时旋转 |
| 歌词页当前唱到的那一句跟随高亮 | 歌词逐行高亮 Lyrics Sync | 只有一两句歌词 / 用户要手动翻阅全部歌词 |
| 播放页按住封面往上拖切下一首 | 上滑切歌 Track Swipe | 列表里点一下切歌 / 横屏、封面很小 |
| 全屏播放页往下拖收起成迷你条 | 播放页下滑收起 Player Collapse | 页面内有纵向滚动内容 / 没有可返回的列表 |
| 聊天输入框收键盘后要收成浮动胶囊 | 输入框收起变形 Composer Collapse | 底部已有 tab bar / 输入框在滚动区域中间 |
| 聊天打字时草稿气泡要跟着变大 | 气泡边打边长 Live Bubble | 长文富文本 / 低端设备每字重排 |
| 好友正在输入,标题栏要给提示让位 | 正在输入提示条 Typing Pill | 标题栏空间不足 / 要同时显示多人输入 |
| 聊天消息双击快速回应 | 双击爱心回应 Heart Burst | 需要多表情选择(用长按表情回应) / 消息贴边 |
| 打卡要长按确认、有盖章感 | 长按打卡 Hold to Check-in | 普通点赞收藏 / 按钮很小看不清进度 |
| 完成任务后奖励要飞进计数器 | 能量飞入 Energy Fly | 整页结算 / 没有可见的计数器 |
| 连续天数达成里程碑要揭晓 | 里程碑揭晓 Streak Reveal | 没有连续记录体系 / 里程碑太频繁 |
| 设置连续打卡目标、多档位选择 | 目标选择页 Goal Commit | 只有一个固定目标 / 选项超过 6 个 |
| 票务 / 会员 / 订阅的档位选择 | 票档横滑 Plan Tab | 档位超过 4 个 / 页面本身有横滑手势 |
| 购票、活动报名选票数 | 滑动选票 Ticket Slider | 数量只有 1–5 件 / 需要精确输入大数字 |
| 出票结果、票条打印 | 票券打印 Ticket Print | 只有一张票 / 出票要等网络结果 |
| 开卡、开会员成功页 | 会员卡就绪 Card Ready | 卡片信息很多 / 没有品牌卡堆背景 |
| 开卡加载页切到就绪页 | 会员卡装配 Card Setup | 加载不到 300ms / 需要用户填资料 |
| 卡包首页的媒体入口 | 收进卡包 Wallet Slip | 只有一张静态图 / 需要用户读完整信息 |
| AI 语音模式主页、说活时的活体反馈 | 语音球呼吸 Voice Orb | 页面已有强主视觉 / 纯文本对话 |
| AI 搜索或聊天输入框进入听写 | 聆听描边 Listening Ring | 单色规范页面 / 长时间停留听写 |
| AI 模型强度、推理档位选择 | 竖滑档位 Level Slider | 档位超过 4 个 / 只是二选一 |
| 弹层里再展开一层选择器 | 面板长高 Sheet Morph | 内容比屏幕高 / 只是静态展示 |
| 语言学习跟读、转写回放 | 逐词跟读 Word Sync | 没有真实音频时间轴 / 只有一句 |
| 详情页下滑关闭 | 下拉返回 Pull Back | 页面有横向手势冲突 / 安卓返回键优先 |
| AI 连接工具、应用选择器 | 工具弧 Tools Arc | 图标超过 8 个 / 要同时比较多项 |
| 第三方账号或工具连接完成 | 连接成功 Connect Pulse | 连接秒回无等待 / 品牌禁止彩色光 |
如果库里没有对应的动效,按 references/foundations.md 的通用规则设计:
- 小元素 150–250ms,面板 300–450ms,转场 450–600ms。
- 进场 ease-out,退场 ease-in,弹性用轻微回弹(超调不超过 8%)。
- 只动 transform 和 opacity,避免改 width、height。
- 一组元素依次出现,间隔 30–60ms。
动效底线(所有动效都要满足)
- 有来源:元素从哪里来、回哪里去要讲得通。按钮变成菜单,就是按钮本身在变形,不是凭空弹出新的一层。
- 有层次:一组元素依次出现,间隔 30–60ms,不要一起蹦出来。
- 有曲线:禁止 linear。进场用 ease-out,退场用 ease-in,需要弹性用轻微回弹(超调不超过 8%)。
- 有分寸:小元素 150–250ms,面板和卡片 300–450ms,整页转场 450–600ms,任何动效都不超过 700ms。
- 可逆:打开怎么来,关闭就怎么回去,路径一致。
- 只动 transform 和 opacity,避免改 width、height、top 这类属性导致卡顿。确实需要改尺寸时用 FLIP 技巧。
- 尊重系统设置:
prefers-reduced-motion: reduce时,动画改成 150ms 以内的淡入淡出。 - 有反馈:可点击的元素要有按下态(缩放到 0.96–0.98)和 hover 态,触屏上有点击反馈。
- 手势要跟手:拖动时元素 1:1 跟着手指(需要阻力时加阻尼),松手后按"距离阈值 + 滑动速度"判断是回弹、吸附还是甩出,绝不直接跳位。周围元素要实时让位或补位。用 Pointer Events 实现,鼠标和触屏都能用。
- 等待要有内容:结构已知时用骨架屏而不是白屏转圈,图片框提前占位,内容到了分块错开出场,加载前后布局不跳;操作后 100ms 内必须有可见反馈。
- 页面切换要有空间关系:新内容从哪个方向来、旧内容往哪退要和操作方向一致;弹出层出现时背后页面要跟着退后(缩小、压暗),不能一动不动。指示器(胶囊、下划线)要"流"过去,不要瞬移。
- 粒子要有来源和退场:粒子从触发它的元素里来(按钮、被删的消息、Logo 本身),有重力或阻力(先快后慢),每粒各自淡出,不整批消失;一个页面最多一处,全部画在一个 canvas 上,减少动效时不放。
- 图表要"长出来、变过去":先出坐标再出数据,数据按阅读顺序依次出现(柱子从左到右、折线一笔画出、圆环顺时针),数字跟着图形一起滚动;数据切换时从旧形状变到新形状,不清空重画;能点的图表点了要有"被选中"的形变(弹出、加粗),不只变颜色;同一份数据只在第一次进入时播放。
- 滚动动效要跟手、只播一次:进场类(浮现)在元素真正露出一点时才触发,同组依次出发,播过不重播;进度类(视差、逐字点亮、钉住换图)进度完全由滚动位置决定,手停画面就停、往回滑就倒回去,不要自己按时间播放;用 IntersectionObserver 和 transform,不在 scroll 事件里改布局;减少动效时直接显示最终状态。
- 按钮要回应你:点下去不只是变个色或另外弹个提示框。反馈出现在按钮本身(变形、变勾、文字滚动换掉),或者有一个看得见的结果去向(东西飞进购物车、选项从按钮里依次弹出);按钮尺寸变化要平滑,不一下跳;鼠标悬停类效果只给电脑端,触屏只保留按下态。
- 等待要让人觉得快:先把能给的结果立刻给出来(缩略图、发出去的消息、首页框架),原页面不要被白屏或遮罩盖掉;进度要看得见、会变化(细进度条先快后慢、照片一点点刷亮、波纹和小车在动),不要只有一个转圈加一句文字;结束时有衔接(冲线、对勾、收回、开过来),不要内容一下子硬换掉。
- 出错和断网不拆页面:失败只发生在内容区,导航和标签栏都留着;重试按钮本身要回应(缩成小转圈),内容回来一张张浮现;断网用一条不吓人的细横幅,已加载的内容照常能看,恢复后自动补上没加载的部分;新内容到了不打断用户,用一颗可点的胶囊提示,点了再平滑插进来。
- 提醒不打扰:通知从屏幕边缘滑进来(带轻微回弹),不弹系统 alert、不压暗整页、不挡住操作;同一处连续来的提醒原地更新(文字滚动、数字翻牌),不叠一堆;能用手势收走(往上推、左滑)且跟手;数字变化要滚过去,角标宽度平滑变化;删除类操作给几秒撤销,并让人看得见还剩多久。
- 等待要看得见在变:被等的东西本身要有变化(图片从噪点里显影、图标被扇形扫亮、多步骤的线一段段走到下一站),而不是旁边放个百分比;卡住时保留原画面只轻轻压暗,不黑屏、不弹大白框;每到一个节点给一个小确认(打勾、弹一下),正在进行的那一步要和已完成的区分开。
- 评论区要有来龙去脉:@ 名单从光标里弹出,选中的人变成一个整体(胶囊,一次删掉);回复一条接一条垂下来,用竖线串起来,下面的内容平滑让位;表情回应能按住滑动选,选中的表情飞到它该去的地方,计数跳一下。不要整块蹦出来,也不要让人松手再点一次。
- 引导要指路、不拦路:新手引导直接指向真实的按钮(镂空照亮、箭头指着),不在屏幕中间放一个说明框;换步时光圈和气泡连续滑过去,不跳;欢迎页跟手且有前后层次;空状态给一个"从这开始"的入口,第一条内容从入口飞进来;系统权限先用自己的说明卡讲清楚好处,用户点了"好的"才弹系统框;所有引导都能跳过,只出现一次。
- 表单要等人说完:用户还没输完不报错(停止输入约 400ms 或离开输入框再校验),改对了立刻变绿;反馈就近出现在输入框旁边;错误用"动作 + 颜色 + 文字"三重提示,不只靠变红,不用 alert;标签用真正的 label 不用 placeholder;状态切换时输入框不改变布局高度。
- 卡片要有分量、不是硬切:按下去的反馈要体现在卡片本身的立体变化(倾斜、抬起、缩放),不是只换颜色或透明度;翻面、长按浮起这类"状态切换"要让人看到中间过程(90° 侧立时的抬起、蓄力后的浮起),不是直接从 A 跳到 B;横向轮播要让当前项和两侧有连续的大小/亮度差异,并吸附停在确定的位置,不能停在不确定的中间状态。
- 搜索筛选要连续、不重排:搜索入口展开、筛选面板滑出都要有"从哪来、位置宽高连续过渡"的真实路径,不能瞬间切换或原地出现;联想词、筛选结果变化是逐条增删/逐项移动,不是整体刷新或瞬间跳位;排序、筛选导致的列表变化要让人看清"谁动去了哪"。
- 登录页要顺、不打断:要求登录的弹窗从用户点的那个按钮里长出来、关掉回到那个按钮,背后页面退后;切换登录方式时表单高度平滑伸缩、已填的内容保留;密码显示、倒计时这类状态变化要看得见过程(逐个翻转、数字滚动),不是直接换字;登录成功后直接完成用户刚才想做的事。
- 进度反馈要让人看见"在变"、走到头有回应:进度条、进度环的填充要画出来而不是瞬间跳变,数字跟着图形同步滚动;完成瞬间要有一次性的弹性反馈(放大变勾、轻轻弹一下、震一下)区分"进行中"和"已完成";分段/跳步场景允许画过头一点再弹回,但不能跳过中间状态直接定格。
- 展开折叠要有高度过渡、拖拽要跟手吸档:展开/收起内容时高度要平滑撑开或收回(不是 display 直接显隐、不是一下子全蹦出来),配套的箭头同步旋转;手风琴这类互斥面板,开新的要让旧的自动平滑收起;卡片进详情用"同一张图连续放大、位置宽高连续过渡"的共享元素,返回沿原路径缩回原位,不是硬跳转新页面;底部抽屉等可拖面板要 1:1 跟手拖动,松手按"距离 + 速度"吸附到最近档位并带轻微回弹,绝不停在中间或一下弹到底。
- 数字变化要滚着变:金额、计数、积分、统计数字变化时,从旧值连续滚到新值(先快后慢),不是 textContent 直接替换;大数字带千分位;+1 这类小计数只翻变化的那一位;完成类数字到顶给一下放大回弹;页面入场的统计数字从 0 滚入并轻微回弹定格。
- 播放器要像真的在放:黑胶/唱片类旋转持续匀速,暂停用阻尼减速而不是瞬停,唱针有落下和抬起;歌词高亮是一块会移动变形的高亮,不是只换字色,列表要跟着把当前行送到中间;切歌、收起这类手势 1:1 跟手,背景同步放大或让位,松手按"距离阈值 + 速度"决定回弹还是甩出,不能松手后硬切内容。
- 聊天要像在对话:输入框收起时沿同一路径连续变形,不换元素;打字时草稿气泡实时跟字变宽变高;正在输入提示从边缘滑入并给标题让位;双击回应要看得见爱心飞向头像并被头像收下,结果留在消息下方。
- 打卡要有"完成感":打卡、任务完成、里程碑这类反馈,要让用户看见动作真的发生(按住填充、奖励飞入、卡片弹起),不是点一下直接换状态;完成态要留在页面上,别一闪而过。
- 卡券要像真的在出票/开卡:票档切换是整页横滑、胶囊拉长、卡片延迟淡入,不是内容硬切;选票滑块数字跟手线性变化、粒子从滑块左上喷出;出票先硬切状态,再让票条压窄、从底部上色,最后才出倒计时;会员卡就用特写硬切和指数收缩;卡包入口固定媒体框、内容三段硬切,页面其他部分不动。
- 页面转场要让人看见"从哪来、到哪去":卡片/弹层展开要位置、宽高、圆角、内边距、字号一起连续过渡,只做整卡 scale 会把文字拉变形;内容交叉的两段要重叠,中间不能出现两层都透明的空白窗口,收起时也不许闪回上一层;返回要用两层不同速度(上层滑出、底层慢跟)+ 边缘投影,同速平移没有纵深;滚动塌缩要让每个图标各自飞过去,不是整块网格统一缩小;共享元素必须是同一个元素连续飞行,不能旧页消失、新页凭空出现;底部导航长高成面板时,tab 图标位置留在原地,不能被一起推走。
输出要求
- 默认交付一个可以直接打开运行的单文件 HTML(CSS 和 JS 都写在里面),不依赖外部库;用户指定框架时按框架写。
- 动效参数集中写成 CSS 变量或常量(如
--dur-panel: 400ms),方便用户微调。 - 代码里给关键动效加一行中文注释,说明它模仿的是哪种交互。
- 代码要完整可运行,不用省略号跳过;关键逻辑加中文注释。
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

