ARIA Dialog Role with modal true

From Level Access Web Labs
Revision as of 21:46, 28 February 2020 by Mevan (talk | contribs) (New Chrome behavior)
Jump to navigation Jump to search


This example provides a popup with a role of dialog with an aria-labelledby and aria-describedby reference. Focus is not restricted to the dialog with code in this example (although some screen reader implementations may restrict focus).

For older versions of iOS (not the latest) aria-modal="true" causes huge problems with iOS e.g. 10.x/10.2. If focus is set on the dialog -- the dialog name instructions description are not accessible in the reading order. For older iOS versions don't set focus to role dialog as screen reader virtual cursor is not working right with arrows if focus is set to role dialog. This issue appears to be fixed although it is not marked fixed in this webkit bug (


Assistive technology support

  • JAWS 18 (Firefox) hides other content outside no matter what aria-modal is set to.
  • JAWS 2019 with Chrome announces name and description and restricts focus and virtual cursor to dialog.
  • NVDA 2017.2 (Firefox) hides other content outside no matter what aria-modal is set to. NVDA 2017.4 Browse mode is on when the dialog appears.
  • iOS 13.1.2 with Safari does announces name and description automatically when checkbox or heading is focused on dialog open. Does not restricts focus and virtual cursor to dialog. All content is visible though in browse mode.
  • iOS with VoiceOver 10+->10.3.3 attempts to block access to content outside the modal but fails by prevent access to some of the dialog as well!

Browser support

  • Chrome hides other content outside the dialog - equivalent to aria-hidden=true on the content outside. (Seen in Chrome version 80, February 2020.)