Making Accessible Web Animations

A presentation at CSUN 2020 in in Anaheim, CA, USA by Julie Grundy

Making Accessible Web Animations

Making Accessible Web Animations

New animation tools

New animation tools

Inaccessible Animations

Inaccessible Animations

Attention deficits

Attention deficits

Vestibular disorders

Vestibular disorders

Seizures and migraines

Seizures and migraines

Everyone

Everyone

Why animate?

Why animate?

Accessibility is beautiful

Accessibility is beautiful

Animation has brain benefits!

Animation has brain benefits!

Visual processing

Visual processing

Two systems

Two systems

What System

What System

Intuitive websites

Intuitive websites

Where system

Where system

My example of the two systems

My example of the two systems

What is animation?

What is animation?

Using the two systems

Using the two systems

Differences

Differences

Feedback

Feedback

Orientation

Orientation

The best of both worlds

The best of both worlds

Give your users control over animation with a toggle or setting

Give your users control over animation with a toggle or setting

Toggle example

Toggle example

Respect your user's OS or browser settings for reduced motion

Respect your user's OS or browser settings for reduced motion

Operating systems

Operating systems

Media queries in CSS

Media queries in CSS

Demonstration of a zooming modal (video)

Demonstration of a zooming modal (video)

Prefers reduced motion (code)

Prefers reduced motion (code)

Adapted demonstration (video)

Adapted demonstration (video)

Support

Support

Don't flash too quickly

Don't flash too quickly

How quickly?

How quickly?

How quickly? Too quickly.

How quickly? Too quickly.

Flash speed

Flash speed

Ignore the loophole

Ignore the loophole

Hide things for everyone, not just mouse users

Hide things for everyone, not just mouse users

Focus path for keyboards

Focus path for keyboards

Ideal focus path

Ideal focus path

Actual focus path

Actual focus path

Manage tabindexes (explanation)

Manage tabindexes (explanation)

Manage tabindexes (code part 1)

Manage tabindexes (code part 1)

Managing tabindexes (code part 2)

Managing tabindexes (code part 2)

Or you could use the display: none property

Or you could use the display: none property

Adding display: none (code part 1)

Adding display: none (code part 1)

But this doesn't work as expected

But this doesn't work as expected

Use a function to hide your hiding

Use a function to hide your hiding

Removing display: none

Removing display: none

Summary of what to do for accessible animations

Summary of what to do for accessible animations

Let’s chat

Let’s chat

Animated interfaces present barriers to many people with disabilities, but cognitive benefits to others. Learn how you can get the best of both worlds by making your interface animation accessible.

Resources

The following resources were mentioned during the presentation or are useful additional information.

  • Web Animation link bundle

    My collection of links about web animation, including accessibility

  • Designing Interface Animation

    Val Head’s excellent book on how to design purposeful and good-looking animation for your interface. Covers principles of animation, how to prototype and include in a design system, plus excellent examples.

  • Animation At Work

    Rachel Nabor’s wonderful book covers how our brains perceive motion, plus how to decide on which animation projects to tackle, and resources and tools you’ll need to get started.

  • Revisiting prefers-reduced-motion

    Eric Bailey’s second deep dive into how to use the prefers-reduced-motion query effectively. The comments have good suggestions as well, and the first article (linked early in this one) is also worth reading even though the support information is out of date now.

Buzz and feedback

Here’s what was said about this presentation on social media.