Applications everyone can use.
WHAT TO SUPPORT
Screen readers on both platforms System text size High contrast settings Reduced motion Alternative input methods
WHAT EVERY INTERACTIVE ELEMENT NEEDS
An accessible label describing what it does A conveyed role and state Sufficient size and contrast
WHAT COMMONLY LACKS LABELS
Icon-only buttons.
WHY THAT MATTERS
They are announced as nothing, or as their image name.
WHAT TO GROUP
Related elements, so they are announced together rather than separately.
WHAT TO ANNOUNCE
Changes happening without navigation: errors, confirmations, loading completion.
WHAT TO RESPECT
Reduced motion, by removing or reducing animation.
WHY
Motion causes genuine discomfort and nausea for some people.
WHAT TO TEST
Navigating the entire application with the screen reader enabled At the largest text size With reduced motion enabled
WHAT AUTOMATED CHECKS FIND
Missing labels, contrast failures, small targets.
WHAT THEY DO NOT FIND
Whether it is actually usable.
WHAT PLATFORM COMPONENTS PROVIDE
Much of this by default, which custom components do not.