Animationen
Regeln
- Verwende Framer Motion für React –
motion.divmitinitial,animate,exitProps AnimatePresencefür Animationen beim Ein-/Ausblenden – umschließe bedingte Renderingslayout-Prop für automatische Layout-Animationen (Neuordnung, Größenänderung)- Scroll-Animationen:
useScroll()+useTransform()für Parallax- und scrollgesteuerte Einblendungen - Respektiere reduzierte Bewegung:
useReducedMotion()-Hook – deaktiviere nicht essentielle Animationen - Gestaffelte Kinder:
variantsmitstaggerChildrenfür List-Animationen - Performance: Nur
transformundopacityanimieren – niemalswidth,height,marginanimieren - Kurze Dauern: 200-400ms für UI-Übergänge, 400-800ms für Seitenübergänge
Vermeiden
- Layout-Eigenschaften animieren (width, height, top, left) – stattdessen
transform: translate/scaleverwenden - Animationen länger als 1s für UI-Interaktionen – wirkt träge
- Automatisch abgespielte Animationen ohne Benutzerauslöser – desorientierend
prefers-reduced-motionignorieren – Barrierefreiheitsanforderung