Modals Dialogs

dylantarre/animation-principles/skills/07-by-ui-element/modals-dialogs

作者 dylantarre83597134ba8f无许可证99 个星标收录于 2026年10月8日更新于 2026年10月8日仓库9个月前更新

Use when animating modals, dialogs, popovers, or overlay content to create smooth entrances and exits

仅含说明Design & Creative
AI 生成的概览

为模态框、对话框、弹出层和覆盖内容提供平滑进出场动画的指导。

功能
该技能提供模态框、对话框、弹出层和覆盖内容动画化的原则。它把迪士尼十二项动画原则对应到模态框过渡上,涵盖缩放、背景变暗、内容错峰出现、缓动曲线和时长数值。它还包含一段背景淡入与模态框入场关键帧的 CSS 示例,以及相关 CSS 属性清单。
适用场景
在实现或改进模态框、对话框、弹出层或其他覆盖内容的动效时使用。适合希望进出场平滑自然、不显突兀的场景。
运行要求
无需脚本或特殊工具,仅为说明性内容。应用其中的 CSS 示例需要项目能渲染模态框并支持 CSS 动画。

Modal & Dialog Animation Principles

Apply Disney's 12 principles to modals for seamless, non-jarring transitions.

Principles Applied to Modals

1. Squash & Stretch

Modal can scale from 0.9 to 1.0 on enter, creating a subtle expansion feel. Exit reverses. Keep it subtle to maintain professionalism.

2. Anticipation

Trigger element (button) should react before modal appears. Brief scale-down of trigger, then modal emerges from that point.

3. Staging

Backdrop dims (0.5-0.7 opacity) to focus attention on modal. Background content can blur slightly (4-8px). Modal is the star.

4. Straight Ahead & Pose to Pose

Define states: hidden, entering, visible, exiting. Clear keyframes for each. Pose-to-pose ensures predictable, controllable animation.

5. Follow Through & Overlapping Action

Modal container arrives first, content fades in 50-100ms after. Close button can have slight bounce at end. Stagger form fields.

6. Ease In & Ease Out

Enter: ease-out (decelerates in). Exit: ease-in (accelerates out). cubic-bezier(0.16, 1, 0.3, 1) for smooth, bouncy enter.

7. Arcs

If modal originates from a button, arc toward center rather than straight line. Creates more organic movement path.

8. Secondary Action

While modal scales in (primary), backdrop fades (secondary), content staggers (tertiary). Each supports without competing.

9. Timing

  • Backdrop fade: 200-250ms
  • Modal enter: 250-350ms
  • Modal exit: 200ms (faster out)
  • Content stagger: 30-50ms per item
  • Shake on error: 300ms

10. Exaggeration

Dramatic entrance for important alerts. Slight overshoot scale (1.02) before settling at 1.0. Error modals can shake briefly.

11. Solid Drawing

Modal shadows should match interface light source. Maintain consistent border-radius. Content should never overflow during animation.

12. Appeal

Smooth entrances feel polished. Origin-point animation feels connected. Abrupt modals feel jarring. Invest in modal transitions.

CSS Implementation

css
.modal-backdrop {  transition: opacity 250ms ease-out;}
.modal {  animation: modalEnter 300ms cubic-bezier(0.16, 1, 0.3, 1);}
@keyframes modalEnter {  from {    opacity: 0;    transform: scale(0.9) translateY(20px);  }  to {    opacity: 1;    transform: scale(1) translateY(0);  }}

Key Properties

  • transform: scale, translate (origin point)
  • opacity: fade in/out
  • backdrop-filter: blur background
  • animation: keyframe sequences
  • transform-origin: source point

来源与署名

来源:dylantarre/animation-principles位于skills/07-by-ui-element/modals-dialogs提交8359713

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架