Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Val Head — A New Look At UX Animation — UX Y'al...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
UX Y'all
October 12, 2022
Design
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Val Head — A New Look At UX Animation — UX Y'all 2022
UX Y'all
October 12, 2022
More Decks by UX Y'all
See All by UX Y'all
Breaking Down the Distinctions Evaluating AI generated Web Designs - Laura Ruel
uxyall
0
200
Redefining UX Design in the Age of Generative AI - Will Ryan
uxyall
0
230
How to critique other people’s designs without pissing them off - Ingrid Towey & Jess Schaefer
uxyall
0
150
Are we breaking people with our designs - Steve Banfi
uxyall
0
190
The Breaks Design Thinking Workshop - Sara Sosnowski
uxyall
0
200
Are you ready willing and able to lead a UX Research and Design team? - La Tosca Goodwin
uxyall
0
150
Breaking the Research Paradigm: Unlearning Biases and Fostering Inclusive UX - Rachel Rodney
uxyall
0
160
Breakthrough User Research with Trauma Informed Practices - Sumonthip Gmitro & Michiko Stas
uxyall
0
130
Decolonizing Your Design System Unveiling Biases and Revolutionizing Inclusion - Michelle Chin
uxyall
0
190
Other Decks in Design
See All in Design
Of Ordination and Rebellion exploration sketches
rezaline
0
190
Drawing_for_Anim_Final_PDF.pdf
lynteo
2
170
つくり方を変えていく | change-how-we-build
mottox2
2
1.4k
Saving_the_King_-_Storyboard.pdf
terencebasart
0
250
開発・制作におけるUI・UXデザインの重要性について~UI・UXデザインってなんだろう~
yamasaku
0
160
20260215独立行政法人科学技術振興機構(JST) 社会技術研究開発センター(RISTEX)ケアが根づく社会システム _公開シンポジウム
a2k
1
240
Rethinking IFUs: What Board Game Rulebooks Contribute to IFU Usability
deadlinepoet
0
350
Design dependencies
teba_eleven
0
150
エンジニアでも捗る デザイナー的思考入門(bitA Edit 新ver)
tinykitten
0
260
個人理念(自分の言葉)の言語化ワークショップ
kakukoki
1
140
decksh object reference
ajstarks
2
1.8k
Edmonton River Slidedeck
edmontonriver
0
140
Featured
See All Featured
Facilitating Awesome Meetings
lara
57
7.1k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
520
Fireside Chat
paigeccino
42
4k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Odyssey Design
rkendrick25
PRO
2
750
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.7k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
610
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Transcript
Val Head • UX Y’All 2022 A new look at
UX animation
Val Head • UX Y’All 2022 A new look at
UX animation
None
Animation & UX
UX animation • Visual continuity • Reduce cognitive load •
Connect contexts • Direct attention • Branding, voice and tone
User Preferences
“The prefers-reduced-motion media feature is used to detect if
the user has requested the system minimize the amount of animation or motion it uses.” prefers-reduced-motion
None
None
What type of motion to reduce? “…any motion that creates
the illusion of movement…” - WCAG
Multi-speed or multi-directional movement Commonly triggering motion effects: Spinning effects
Constant motion near text When you use any of these in your work, be sure to provide a reduced option.
Not on that list: Animated colour changes, opacity fades,
non-motion effects
How to respect reduced motion requests?
1. Identify potentially triggering motion effects 2. Choose a
reduced effect based on context Respecting reduced motion requests:
None
None
CSS @media (prefers-reduced-motion: reduce) { /* reduced behaviour */ }
JS let motionQuery = matchMedia('(prefers-reduced-motion)'); const handleReduceMotionChanged = () =>
{ if (motionQuery.matches) //reduced behaviour; } motionQuery.addListener(handleReduceMotionChanged); handleReduceMotionChanged();
None
None
None
None
smashingmagazine.com/2020/09/design-reduced-motion-sensitivities/
Container Queries
Container Queries in short: • Assign a container • Query
details about that container • De fi ne styles of other element(s) based on the results of that query
div { container:my-container / inline-size; } CSS
@container my-container (max-width:50em) { .thing { animation-duration: 250ms; } }
CSS
None
None
@container street (max-width:500px) { .cloud1 {animation-duration: 20s;} .cloud2 {animation-duration: 26s;}
.skyshapes {display: none;} } CSS
CSS @keyframes fl oating { 0% {translate: calc(0cqi - var(--cloud-width));}
100% {translate: calc(100cqi + var(--cloud-width));} }
Why adjust animation based on container size?
Focus or simplify animation for smaller contexts Emphasize with
strong motion for larger contexts Change playback sequence when layout changes Why adjust animations based on container size?
Container queries are for design too!
oddbird.net/2022/08/18/cq-syntax/
None
Thank you!