2.5.4 - Device Motion
Learn how to ensure accessibility when utilizing device motion in your web features. Provide alternative input methods, options to disable motion responses, and support for user preferences.
Summary
When incorporating device motion, such as shaking or tilting, into your web features, it is crucial to ensure that users have the option to disable motion responses and that alternative input methods are available. By following these web accessibility guidelines, you can provide a more inclusive experience for all users.
If you have implemented any functionality that relies on device motion, ensure that equivalent functionality is accessible through alternative means, such as pressing a button or using traditional input methods. Additionally, provide the option to disable motion responses altogether.
Requirements
To meet web accessibility standards while using device motion, adhere to the following requirements:
- Avoid using device motion events as the sole means of activating functionality. However, if you do utilize device motion, make sure to:
- Provide alternative input methods to access the same functionality.
- Offer a user preference or setting to disable motion actuation, allowing users to opt-out of motion responses.
- Support operating system features that enable users to disable motion actuation globally.
Why?
Implementing these requirements benefits people who:
- Are unable to perform tilting, shaking, or gesturing to interact with the interface.
- Have their devices mounted to mobility aids in fixed positions.
- Experience involuntary movements or shaking.
By meeting these guidelines, you ensure that users:
- Can still access and operate all functionality through alternative means.
- Are not unintentionally triggering actions or functionalities through motion responses.
Common Mistakes
To ensure accessibility, avoid the following common mistakes:
- Implementing functionalities that can only be activated by moving, shaking, or tilting the device without providing alternative input methods. For example:
- On an iPhone, shaking the device to undo text input without offering an alternative way to cancel the last action.
- Failing to provide the ability to disable motion actuation. For example:
- Creating an app that allows users to tilt their devices to scroll a page but not providing an option to disable this response to tilting.
Official wording in the Web Content Accessibility Guidelines
2.5.4 Motion Actuation: Functionality that can be operated by device motion or user motion can also be operated by user interface components and responding to the motion can be disabled to prevent accidental actuation, except when: (Level A)
- Supported Interface: The motion is used to operate functionality through an accessibility supported interface;
- Essential: The motion is essential for the function and doing so would invalidate the activity.
See the W3C's detailed explanation of this guideline with techniques and examples.