entrance-animations 是一个关于元素入场动画设计的技能,来源于 dylantarre/animation-principles 项目。它的用途是:当元素需要在屏幕上出现时——包括页面加载、模态框打开、项目被添加、内容揭示,或任何“进入视野”的动画——使用该技能来指导动画设计。
主要能力 该技能把迪士尼的十二动画原则应用到元素入场中,具体包括:
- 挤压与拉伸:入场时从 95% 缩放到 100%,让元素感觉有弹性而非僵硬。
- 预备动作:从略低于或略小于最终位置开始,例如向上滑动前先偏移 -10px,制造预期感。
- 舞台调度:从用户注意力方向进入。新列表项从顶部进入,模态框从中心进入,侧边栏从各自边缘进入。
- 逐帧与关键帧:使用关键帧方式,定义清晰的起始状态(不可见、有偏移)和结束状态(可见、已定位)。
- 跟随与重叠:子元素应略微滞后。容器先进入,内容在 50-100ms 后进入。
- 慢入慢出:入场使用 ease-out,快速开始、柔和落地,曲线为 cubic-bezier(0, 0, 0.2, 1)。
- 弧线:结合 Y 轴和 X 轴移动,不要只做淡入,而是沿细微曲线滑入。
- 次要动作:将淡入与缩放配对,透明度 0→1 的同时缩放 0.95→1,增加层次感。
- 夸张:缩放可从 0.8 开始以产生戏剧效果,0.95 则更细腻。
- 扎实的绘画:保持一致的 3D 空间。从“后方”进入的元素应放大,从侧面进入的元素应滑动。
- 吸引力:入场应让人感到欢迎,避免突兀的弹出。
时长建议 资料给出了不同元素类型的时长、缓动与延迟模式:
- 提示条/警告:150ms,ease-out,无延迟。
- 模态框:250ms,ease-out,内容 +50ms。
- 卡片/项目:200ms,ease-out,无延迟。
- 列表项:200ms,ease-out,错峰 50ms。
- 页面区块:300ms,ease-out,错峰 100ms。
- 主视觉内容:400ms,ease-out,错峰 150ms。
此外,快速入场为 150-200ms(提示条、工具提示),标准入场为 200-300ms(模态框、卡片),戏剧性揭示为 300-500ms(主视觉区块、页面过渡)。
使用方式 资料提供了一个实现模式:
.entering { animation: entrance 250ms cubic-bezier(0, 0, 0.2, 1) forwards; }
@keyframes entrance { from { opacity: 0; transform: translateY(10px) scale(0.98); } to { opacity: 1; transform: translateY(0) scale(1); } }
错峰公式为:delay = index * 50ms,整个序列总时长上限为 500ms。在没有用户主动操作的情况下,错峰序列中的项目数不要超过 5 个。
适用场景 适用于页面加载、模态框打开、列表项新增、内容揭示等任何元素进入视野的动画场景,尤其适合需要统一入场动画规范的界面开发。
限制 资料未提供该技能的具体安装方式、依赖环境、支持的框架或平台、收费与价格信息,这些内容暂未提供。