Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Web Animations: Welcome to the jungle

Web Animations: Welcome to the jungle

Wenn es darum geht, Webinhalte zu animieren, kann man sich bei der schieren Auswahl an Möglichkeiten schnell wie im Dschungel vorkommen. Deshalb und aus Sorge um zu hohe Aufwände werden sie jedoch zu Unrecht in Projekten oft nur stiefmütterlich behandelt.
In dieser Session wollen wir mit diesen Vorurteilen aufräumen und Licht ins Animation-Dickicht bringen. Gemeinsam schauen wir uns an, welchen Zweck Animations erfüllen, warum sie für eine gute User Experience unabdingbar sind und wie man für seinen Anwendungsfall die richtige Tech auswählt.

Sascha Lehmann

March 22, 2023
Tweet

More Decks by Sascha Lehmann

Other Decks in Programming

Transcript

  1. ANIMATIONS “Zu zeitaufwändig!” “Verursachen nur Performanceprobleme!” “Sind einfach unnötig” “Haben

    keinen wesentlichen Mehrwert" “Verursachen zu viel Boilerplate-Code” Web Animations Welcome to the jungle
  2. Lenken den Fokus Helfen ein Mentales Modell aufzubauen Kommunizieren State

    Change Verhindern Desorientierung Sorgen für ”Vergnügen” Aufgaben von Animationen in der UX   ↻   Web Animations Welcome to the jungle
  3. Arron Walter’s Hierachy of User Needs Erwartungen an Applikationen Pleasurable

    Usable Reliable Functional • UI / UX Experte • Autor “Design for Emotion” • Speaker • Consultant Mehr Infos: https://www.aarronwalter.com/ Web Animations Welcome to the jungle
  4. Easing Follow Through and Overlapping Action Squash and Stretch Anticipation

    Staging Straight ahead action and pose to pose Arcs Secondary Action Timing Exaggeration Solid drawing Appeal 12 Prinzipien der Animation Web Animations Welcome to the jungle
  5. Easing Follow Through and Overlapping Action Squash and Stretch Anticipation

    Staging Straight ahead action and pose to pose Arcs Secondary Action Timing Exaggeration Solid drawing Appeal 12 Prinzipien der Animation ⭐ ⭐ ⭐ 2 2 3 Web Animations Welcome to the jungle
  6. Prinzip 11 + 12: Solid drawing & appeal • Einheitliches

    & ansprechendes Design • Designgrundlagen • Durchgängiges Konzept • Design System Web Animations Welcome to the jungle
  7. CSS Web Animations API Frameworks Die Möglichkeiten Animieren im Web

    • Sehr mächtig • Abstraktionsebene (DSL) • Ggf. ”Schwergewichtig” • Flexibler • Mehr Kontrolle • Komplexere Orchestrierung • Basic • Einfach anzuwenden • Leichtgewichtig Web Animations Welcome to the jungle
  8. Direktzugriff auf den Browser • Grundlage von CSS Transitions und

    Animations • API ermöglicht es Animationen in JavaScript zu schreiben • Verwendet Browserspezifische Animationsimplementierung à Browser optimiert selbst • Dynamisches setzen von Werten möglich Web Animations API Web Animations Welcome to the jungle
  9. My Best Practices • CSS Transitions / Animations mit Klassen

    anwenden • Ganze Trigger oder Animationsbestandteile in File(s) auslagern • AnimationReferenzeMetadata • Factory-Functions verwenden • Direktiven mit Animation-Player erstellen • Framework-Funktionen wiederverwendbar kapseln Reusing Animations Web Animations Welcome to the jungle
  10. Style Layout Paint Composite Browser Rendering Pipeline • Alles was

    mit CSS Transitions und Animations zu tun hat läuft in einem separaten Compositor Thread • Blockt NICHT den Hauptthread … • … allerdings sind Layout und Paint, Aufgabe des Main Thread • Parsing • Cascade • … • Platz Berechnung • Beinflussung • … • Colors • Images • Borders • … • opacity • transform • … Web Animations Welcome to the jungle
  11. Welche eher vermeiden? • Die beste Performance wird mit Properties

    erzielt die nur den Composition Step beinflussen • transform • translate • scale • skew • rotate • opacity • Im Optimalfall vermeiden was Layout und Paint Steps betriff • width • height • position • color • shadows • background-image Welche Properties sollte ich animieren? Web Animations Welcome to the jungle
  12. • Animationen NICHT zum Schluss bedenken, sondern von Anfangan mit

    einbeziehen • Animationen sind wichtig um Applikationen lebensechter zu gestalten • Animationen mit Sinn und Verstand einsetzen • Pinzipien beachten • Konsistenz • Mit Erfahrung steigern • So einfach wie möglich, so komplex wie nötig • Möglichst vermeiden Properties zu animieren, die LAYOUT und PAINT Zyklus des Browsers betreffen Resume Web Animations Welcome to the jungle