Mac Browsers Summary - Safari has the best HTML5 Accessibility Support Score
HTML5 Accessibility Support Score
20/100
- 20/100
14/100
74/100
Overview
This site is a resource to provide information about which new HTML5 user interface features are accessibility supported in browsers, making them usable by people who rely upon assistive technology (AT) to use the web.
Note: Browser's may not have practical accessibility support for HTML features on particular operating systems. Refer to Rough Guide: browsers, operating systems and screen reader support for details.
It is not intended to dissuade developers from using new HTML5 features. Sometimes there are better choices, sometimes developers have to add a little extra to make the feature useful or usable, and other times features have simply not been implemented by any browser or only by browsers that do not yet support assistive technologies. As a consequence it may not yet be practical to use a particular HTML5 feature. Example work arounds for lack of implementation or lack of accessible implementation are linked from the Solutions page.
The information in the support table is updated on a semi-regular basis, to keep up with support improvements made in browsers as new versions are released.
Support Tables - Legend & notes
Windows browsers - Details
New HTML5 feature accessibility support in Windows Browsers
| new HTML5 elements |
Chrome 17.0.963.46 beta-m |
Firefox 11.0a2 |
IE 9 |
Opera 11.61 |
Safari/
Webkit r105476 |
Notes |
article element |
Not supported |
Supported |
Not supported |
Not supported |
Not supported |
IE/Opera/Safari: provide the same amount of semantic information to AT as a div element
Chrome: exposes element with a section role in IA2
Firefox: exposes element with a document role in MSAA/IA2 |
aside element |
Not supported |
Supported |
Not supported |
Not supported |
Not supported |
IE/Opera/Safari: provide the same amount of semantic information to AT as a div element.
Chrome: exposes element with a section role in IA2
Firefox: exposes as ARIA role="complementary" via IA2 object attribute and IA2 note role. |
audio element |
Not supported |
Supported |
Supported |
Partially supported |
Not supported |
Firefox:
- Exposes controls via accessibility APIs, but individual controls cannot be interacted with via the keyboard.
- keyboard access is provided via Firefox specific shortcuts
- Exposes element name as an IA2 object attribute
- role=grouping
Opera: has keyboard support, but no AT support.
IE 9:
- Exposes controls via accessibility APIs, but individual controls cannot be interacted with via the keyboard.
- default accessible name of 'audio'
- role=grouping
Refer to: Keyboard access for HTML5 video for more information. |
canvas element |
Not supported |
Not supported |
Partially supported |
Not supported |
Not supported |
Internet Explorer 9: supports the accessible canvas element sub-DOM, but not caret or focus exposure. |
datalist element |
Partially supported |
Partially supported |
Not implemented |
Partially supported |
Not implemented |
Opera: keyboard accessible.
Firefox: keyboard accessible. list items exposed correctly, but presence of datalist not indicated when focus is on the edit box, (suggest text field should be exposed as a combobox or presence of list indicated by haspopup property)
Chrome: keyboard accessible. Does not expose datalist as list, does not convey presence of data list from the edit box |
details element |
Not supported |
Not implemented |
Not implemented |
Not implemented |
Not supported |
Currently provides the same amount of semantic information to AT as a div element.
Chrome & Webkit: implemented, but no keyboard or AT support.
|
figcaption element |
Not supported |
Supported |
Not supported |
Not supported |
Not supported |
Currently provides the same amount of semantic information to AT as a div element.
Firefox: exposes element as Ia" caption role and the element name as an IA2 object attribute, exposes the figcaption content as an accessible name for its parent figure. |
figure element |
Not supported |
Supported |
Not supported |
Not supported |
Not supported |
IE/Opera/Safari: provide the same amount of semantic information to AT as a div element
Chrome: exposes element with a section role in IA2
Firefox: exposes element role=group with accessible name from figcaption. |
footer element |
Not supported |
Supported |
Not supported |
Not supported |
Not supported |
IE/Opera/Safari: provide the same amount of semantic information to AT as a div element
Chrome: exposes element with a section role in IA2
Firefox: exposes as ARIA landmark role="contentinfo" Refer to HTML5 Accessibility Chops: section elements |
header element |
Not supported |
Supported |
Not supported |
Not supported |
Not supported |
IE/Opera/Safari: provide the same amount of semantic information to AT as a div element
Chrome: exposes element with a section role in IA2
Firefox: exposes element name via IA2 object attribute. |
hgroup element |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
not implemented |
color input |
Not implemented |
Not implemented |
Not implemented |
Partially supported |
Not implemented |
Opera: keyboard accessible, but no information exposed to assistive technology. |
Date input |
Not implemented |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology. |
Date and Time input |
Not implemented |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology.
|
Local Date and Time input |
Not implemented |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology.
|
E-mail input |
Not implemented |
Not implemented |
Not implemented |
Not supported |
Not implemented |
? mostly not implemented. |
Month input |
Not implemented |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology.
|
Number input |
Partially supported |
Not implemented |
Not implemented |
Partially supported |
Partially supported |
Opera: keyboard accessible.
Chrome : keyboard accessible, role exposed as edit box should be spinbutton.
Safari: keyboard support. |
Range input |
Supported |
Not implemented |
Not implemented |
Partially supported |
Partially supported |
Chrome: correct role, full keyboard support, slider value exposed.
Opera: no role, partial keyboard support, slider value not exposed.
Safari: partial keyboard support. |
Search input |
Supported |
Supported |
Supported |
Supported |
Supported |
The difference between input type="search" and type="text" is 'primarily stylistic'. |
Telephone input |
Not supported |
Not implemented |
Not implemented |
Not supported |
Not implemented |
? |
Time input |
Not implemented |
Not implemented |
Not implemented |
Partially supported |
Not implemented |
Opera: keyboard accessible.
Chrome: keyboard accessible, role exposed as edit box should be spinbutton |
URL input |
Not implemented |
Not implemented |
Not implemented |
Not supported |
Not implemented |
? |
Week input |
Not implemented |
Not implemented |
Not implemented |
Partially supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology.
Chrome : keyboard accessible, role exposed as edit box should be spinbutton |
menu > context menu |
Not implemented |
Partially supported |
Not implemented |
Not implemented |
Not implemented |
Firefox: |
menu> list |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
not implemented |
menu > toolbar |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
not implemented |
| meter element |
Not supported |
Not implemented |
Not implemented |
Not supported |
Not supported |
Chrome: name, role, properties not exposed.
Opera:name, role, properties not exposed. |
nav element |
Not supported |
Supported |
Not supported |
Not supported |
Not supported |
IE/Opera/Safari: provide the same amount of semantic information to AT as a div element.
Chrome: exposes element with a section role in IA2
Firefox: exposes as ARIA landmark role="navigation" via IA2 object attribute, and as a section role in IA2 (Unsure about the correctness of this mapping). Refer to HTML5 Accessibility Chops: section elements |
output element |
Not implemented |
Not implemented Supported |
Not implemented |
Not supported |
Not implemented |
Firefox: accessibility support implemented - IA2 section role, with aria-live=polite and hasIA2 controlled_by relation defined by @for attribute. |
progress element |
Supported |
Supported |
Not implemented |
Not supported |
Not implemented |
Chrome: exposes name role, state and value correctly!
Opera: name, role and state content not exposed.
Firefox: exposes name role, state and value correctly! |
section element |
Supported |
Supported |
Not supported |
Not supported |
Not supported |
IE/Opera/Safari: provide the same amount of semantic information to AT as a div element
Chrome: exposes element with a section role in IA2
Firefox: exposes element with a paragraph role in IA2 (Unsure about the correctness of this mapping). Refer to HTML5 Accessibility Chops: section elements |
summary element |
Not supported |
Not implemented |
Not implemented |
Not implemented |
Not supported |
IE/Opera/Safari: provide the same amount of semantic information to AT as a div element
Chrome: no keyboard access. Exposes element with a section role in IA2. no state or name information exposed.
Webkit:no keyboard access. No role/name/state information exposed. |
video element |
Not supported |
Supported |
Supported |
Partially supported |
Not supported |
Firefox: keyboard support suboptimal - cannot interact with individual controls.
Opera: has keyboard support, but no AT support.
IE 9: keyboard support suboptimal - cannot interact with individual controls
Refer to: Keyboard access for HTML5 video for more information about keyboard access. |
New HTML5 feature accessibility support in Mac Browsers
| new HTML5 elements |
chrome 18.0.1025.5 canary |
Firefox 13.0a1 |
Opera 11.6.1 |
Safari (5.1.2, r104664) |
Notes |
article element |
Not supported |
Not supported |
Not supported |
Supported |
Chrome,Firefox,Opera: provide the same amount of semantic information to AT as a div element
Safari: Exposed in Mac API as AXRole: "AXGroup", AXSubrole: "AXDocumentArticle", AXRoleDescription: "article". |
aside element |
Not supported |
Not supported |
Not supported |
Supported |
Chrome,Firefox,Opera: provide the same amount of semantic information to AT as a div element
Safari: Exposed in Mac API as AXRole: "AXGroup", AXSubrole: "AXLandmarkComplementary",
AXRoleDescription: "complementary" |
audio element |
Not supported |
Partially supported |
Partially supported |
Partially supported |
Firefox & Opera: have keyboard support, but no AT support.
Safari & Chrome: Appears to be no keyboard access unless voiceover is running.
|
canvas element |
Not supported |
Not supported |
Not supported |
Not supported |
No Mac browsers support the proposed canvas accessibility features. |
datalist element |
Partially supported |
Partially supported |
Partially supported |
Not implemented |
Opera: keyboard accessible.
Firefox: keyboard accessible.
Chrome: keyboard accessible. Does not expose datalist as list, does not convey presence of data list from the edit box |
details element |
Not supported |
Not implemented |
Not implemented |
Not supported |
Firefox,Opera: provide the same amount of semantic information to AT as a div element
Chrome & Safari: implemented, but no keyboard or AT support.
|
figcaption element |
Not supported |
Not supported |
Not supported |
Not supported |
Chrome,Firefox,Opera, Safari: provide the same amount of semantic information to AT as a div element |
figure element |
Not supported |
Not supported |
Not supported |
Not supported |
Chrome,Firefox,Opera, Safari: provide the same amount of semantic information to AT as a div element |
footer element |
Not supported |
Not supported |
Not supported |
Supported |
Currently provides the same amount of semantic information to AT as a div element.
Safari: exposes as AXRole: "AXGroup", AXSubrole: "AXLandmarkContentInfo", AXRoleDescription: "content" Note:voicOver announces "content" doesnt seem useful description. |
header element |
Not supported |
Not supported |
Not supported |
Supported |
Currently provides the same amount of semantic information to AT as a div element.
Safari: exposes as AXRole: "AXGroup", AXSubrole: "AXLandmarkBanner", AXRoleDescription: "banner" Note: is every header element announced as banner? |
hgroup element |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
not implemented |
color input |
Not implemented |
Not implemented |
Partially supported |
Not implemented |
Opera: partially keyboard accessible (cannot access 'other' button. No information exposed to assistive technology. |
Date input |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology.
|
Date and Time input |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology.
|
Local Date and Time input |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology. |
E-mail input |
Not implemented |
Not implemented |
Not supported |
Not implemented |
? mostly not implemented. |
Month input |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology. |
Number input |
Partially supported |
Not implemented |
Partially supported |
Supported |
Opera: keyboard accessible.
Safari: Note: stepper controls are assigned role seperately from the edit box. The stepper is not currently recognized by VoiceOver. |
Range input |
Partially supported |
Not implemented |
Partially supported |
Supported |
Chrome: correct role, partial keyboard support, slider value not exposed.
Opera: no role, partial keyboard support, slider value not exposed.
Safari: exposed as AXRole: "AXSlider", AXSubrole: "(null)", AXRoleDescription: "slider" |
Search input |
Supported |
Supported |
Not supported |
Supported |
The difference between input type="search" and type="text" is 'primarily stylistic'. |
Telephone input |
Not supported |
Not implemented |
Not supported |
Not implemented |
? |
Time input |
Not implemented |
Not implemented |
Partially supported |
Not implemented |
Opera: keyboard accessible. |
URL input |
Not implemented |
Not implemented |
Not supported |
Not implemented |
? |
Week input |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Opera: date picker cannot be activated using the keybaord, no information exposed to assistive technology. |
menu > context menu |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
not implemented |
menu> list |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
not implemented |
menu > toolbar |
Not implemented |
Not implemented |
Not implemented |
Not implemented |
not implemented |
| meter element |
Not supported |
Not implemented |
Not supported |
Not supported |
Chrome, Safari, Opera: name, role, properties not exposed. |
nav element |
Not supported |
Not supported |
Not supported |
Supported |
Chrome,Firefox,Opera: provide the same amount of semantic information to AT as a div element.
Safari: exposes as AXRole: "AXGroup", AXSubrole: "AXLandmarkNavigation", AXRoleDescription: "navigation". |
output element |
Not implemented |
Not implemented |
Not supported |
Not implemented |
Currently provides the same amount of semantic information to AT as a div element. |
progress element |
Supported |
Not supported |
Not supported |
Supported |
Chrome & Safari: exposes as AXRole: "AXProgressIndicator", AXSubrole: "(null)", AXRoleDescription: "progress indicator", AXValue (W): "50". |
section element |
Not supported |
Not supported |
Not supported |
Supported |
Chrome,Firefox,Opera: provide the same amount of semantic information to AT as a div element.
Safari: exposes as AXRole: "AXGroup", AXSubrole: "AXDocumentRegion", AXRoleDescription: "region". |
summary element |
Not supported |
Not implemented |
Not implemented |
Not supported |
Provides the same amount of semantic information to AT as a div element.
Chrome & Safari: no keyboard access and no useful role, state or name information exposed. |
video element |
Not supported |
Partially supported |
Partially supported |
Partially supported |
Firefox & Opera: have keyboard support, but no AT support.
Safari & Chrome: Appears to be no keyboard access unless voiceover is running.
|
Example: Chrome 17 (windows) has 21 new features implemented. X = 100/21 = 4.76