↑↓ 이동 · Enter 열기 · Esc 닫기

Motion

애니메이션은 기능적으로만 사용해요. 상태 변환 확인과 주의 안내가 목적이며 지연·장식은 피해요. 인터랙티브 요소는 fast(150ms)로 즉시감을, 오버레이는 slow(350ms)로 안정감을 줘요. prefers-reduced-motion: reduce 설정 시 모든 transform 애니메이션을 disable하고 opacity 전환만 유지해요.

원칙

생산성 도구에서 과도한 애니메이션은 인지 부하를 만들어요. 모든 인터랙티브 전환은 즉시감을 위해 fast(150ms)에 맞추고, 모달·토스트 같은 오버레이는 차분한 안정감을 위해 slow(350ms)를 써요. 페이지 전환은 지연 없이 즉시 렌더링해요.

Duration tokens

Duration 토큰
Token값사용 예시
duration-instant100msHover, focus 피드백
duration-fast150ms버튼 상태 전환, 색상 변화
duration-normal250ms드롭다운 열림/닫힘, 툴팁 등장
duration-slow350ms모달 진입, 토스트 슬라이드

Easing tokens

Easing 토큰
Tokencurve사용 예시
ease-in-outcubic-bezier(0.4, 0, 0.2, 1)기본 전환
ease-outcubic-bezier(0, 0, 0.2, 1)등장 애니메이션
ease-incubic-bezier(0.4, 0, 1, 1)퇴장 애니메이션

Animation Patterns

컴포넌트별 애니메이션 패턴
ComponentTransitionNotes
Modal
Enter · opacity 0→1 + translateY(8px→0), slow, ease-out
Exit  · opacity 1→0 + translateY(0→8px), normal, ease-in
Overlay 동시 fade
Dropdown
Enter · opacity 0→1 + scaleY(0.96→1), normal, ease-out
Exit  · opacity 1→0, fast, ease-in
transform-origin: 트리거 방향
Toast
Enter · opacity 0→1 + translateY(-12px→0), slow, ease-out
Exit  · opacity 1→0, normal
Auto-dismiss 3초
Tooltip
Enter · opacity 0→1, normal, ease-out
Exit  · opacity 1→0, fast
200ms delay 후 표시
Button states
Enter · background-color, fast, ease-in-out
Exit  · —
border-color, box-shadow 포함
Page transition
Enter · 없음 (즉시 렌더링)
Exit  · —
생산성 도구에서 지연 방지

Reduced Motion

prefers-reduced-motion: reduce 시 동작
Token동작효과
Duration모든 duration을 0ms로 강제즉시 상태 전환
TransformtranslateY, scaleY 등 제거slide-scale 모션 비활성화
Opacity전환만 유지fade in/out 그대로 작동
Auto-dismiss타이머 유지, 애니메이션 없이 제거토스트 3초 후 즉시 사라짐
Polaris Office Design System · © 2026 Polaris Office. All rights reserved. · 이용약관Version 1.1.0업데이트 2026.09.18