From 53070803660d70d2faddfcee48ac929be02e7e49 Mon Sep 17 00:00:00 2001 From: Valerie Young Date: Fri, 25 Aug 2023 14:13:45 -0700 Subject: [PATCH 1/9] Remove tables and details/summary in favor of unique headings (#500) Co-authored-by: Scott O'Hara --- html-aam/index.html | 22329 ++++++++++++++++++++++++++++++------------ 1 file changed, 16305 insertions(+), 6024 deletions(-) diff --git a/html-aam/index.html b/html-aam/index.html index 65e14ba1c..cbdd018d3 100644 --- a/html-aam/index.html +++ b/html-aam/index.html @@ -7,7 +7,6 @@ - @@ -40,7 +39,7 @@ formerEditors: [ { name: "Steve Faulkner", company: "TPGi", companyURL: "https://www.tpgi.com/", w3cid: 35007, note: "until May 2023" }, - { name: "Alexander Surkov", company: "Mozilla Foundation", companyURL: "https://www.mozilla.org/", w3cid: 51089, note: "until August 2018" }, + { name: "Alexander Surkov", company: "Mozilla Foundation", companyURL: "https://www.mozilla.org/", w3cid: 51089, note: "until August 2018" }, { name: "Bogdan Brinza", company: "Microsoft", companyURL: "https://www.microsoft.com/", w3cid: 71139, note: "until July 2018" }, { name: "Jason Kiss", company: "Invited Expert", w3cid: 50050, note: "until June 2018" }, { name: "Cynthia Shelly", company: "Microsoft", companyURL: "https://www.microsoft.com/", w3cid: 11897, note: "until September 2013" } @@ -75,36 +74,11 @@ "REC": "https://www.w3.org/TR/accname/" }, xref: ["HTML", "core-aam", "accname", "wai-aria", "dom", "infra"], - preProcess: [ linkCrossReferences, mappingTables ], + preProcess: [ linkCrossReferences ], postProcess: [ fixContributors ], a11y: false }; - - -
@@ -126,6002 +100,16190 @@

Introduction

- This specification defines how HTML user agents respond to and expose [=role=], [=state=] and [=ARIA/property=] information provided for Web content. Unless indicated otherwise, an HTML element or attribute with default [[[WAI-ARIA]]] semantics must be exposed to the platform accessibility APIs according to the relevant WAI-ARIA mappings defined in the [[[core-aam-1.2]]] ([[core-aam-1.2]]) specification. -

-

- In some cases, often due to features of the HTML host language or the accessibility API in question, an element or attribute's mapping differs from the corresponding ARIA mappings specified in the [[core-aam-1.2]]. Where an HTML element or attribute does not have any default WAI-ARIA semantics, the applicable mapping for each platform accessibility API is defined by this specification. -

-

- This document also adapts the [[[accname-1.2]]] specification for deriving the accessible names and accessible descriptions of [[HTML]] elements, and provides accessible implementation examples for specific HTML elements and features. -

-

- Users often access HTML content using assistive technologies that rely on platform accessibility API to obtain and interact with information from the page. This document is part of the following suite of accessibility API mapping specifications for content rendered by user agents: -

-
    -
  • [[[accname-1.2]]]
  • -
  • [[[core-aam-1.2]]]
  • -
  • HTML Accessibility API Mappings 1.0 (this specification)
  • -
  • [[[svg-aam-1.0]]]
  • - -
  • MathML AAM 1.0
  • -
-
-

Accessibility APIs

-

- Accessibility APIs covered by this document are: -

- -

- If user agent developers need to expose information using other accessibility APIs, it is recommended that they work closely with the developer of the platform where the API runs, and assistive technology developers on that platform. -

-

- For more information regarding accessibility APIs, refer to section 1.1 Accessibility APIs of the [[[core-aam-1.2]]]. -

-
-
-
-

- The classification of a section as normative or non-normative applies to the entire section and all sub-sections of that section. -

-

- Normative sections provide requirements that authors, user agents, and assistive technologies MUST follow for an implementation to conform to this specification. -

-

- Non-normative sections provide information useful to understanding the specification. Such sections may contain examples of recommended practice, but it is not required to follow such recommendations in order to conform to this specification. -

-
-

Deprecated

-

- There are currently no deprecated requirements. -

-
-
-
-

Mapping HTML to Accessibility APIs

-
-

General Rules for Exposing WAI-ARIA Semantics

-

- WAI-ARIA support was first introduced to HTML in [[HTML5]]. -

-

- Where an HTML element or attribute has default WAI-ARIA semantics, it MUST be exposed to the platform accessibility APIs in a way that conforms to General rules for exposing WAI-ARIA semantics in the [[[core-aam-1.2]]]. -

-
-
-

Conflicts Between Native Markup Semantics and WAI-ARIA

-

- Where the host language is [[HTML]], user agents MUST conform to - Conflicts between native markup semantics and WAI-ARIA in the [[[core-aam-1.2]]]. -

-
-
-

Exposing HTML Features That Do Not Directly Map to Accessibility APIs

-

- HTML can include features that are not supported by accessibility APIs at the time of publication. There is not a one to one relationship between all features and platform accessibility APIs. When HTML roles, states and properties do not directly map to an accessibility API, and there is a method in the API to expose a text string, user agents MUST expose the undefined role, states and properties via that method. -

-

- For HTML elements or attributes with default WAI-ARIA semantics, user agents MUST conform to - Exposing attributes that do not directly map to accessibility - API properties in the [[core-aam-1.2]]. -

-
-
-

HTML Element Role Mappings

-
    -
  • HTML elements with implicit WAI-ARIA role semantics MUST be mapped to platform accessibility APIs according to the identified WAI-ARIA role mapping as defined in the [[core-aam-1.2]] specification.
  • -
  • "Not mapped" means the element does not need to be exposed via an accessibility API. This is usually because the element is not displayed as part of the user interface. However, authors can force some of these elements to be rendered. For instance, by overriding user agent styles to render elements that would have been otherwise set to `display: none`. In these cases, the user agent SHOULD map such elements to the role of `generic`.
  • -
  • Where applicable, how an element participates in the computation of its own or another element's accessible name and/or accessible description is described in the Accessible Name and Description Computation section of this document.
  • -
  • Where an element is indicated as having "No corresponding (WAI-ARIA) role", or is mapped to the `generic` role, user agents MUST NOT expose the `aria-roledescription` property value in the accessibility tree unless the element has an explicit, conforming `role` attribute value which [[WAI-ARIA-1.2]] does not prohibit the use of `aria-roledescription`.
  • -
  • - IAccessible2: -
      -
    • All elements with accessible objects should implement the IAccessible, IAccessible2 and IAccessible2_2 interfaces.
    • -
    -
  • -
  • - UIA: -
      -
    • When a labelable element is referenced by a `label` element's `for` attribute, or a descendant of a `label` element, the labelable element's UIA `LabeledBy` property points to the UIA element for the `label` element.
    • -
    • Elements mapped to the `Text` Control Type are not generally represented as accessible objects in the accessibility tree, but are just part of the `Text` Control Pattern implemented for the whole HTML document. However, if they have any `aria-` attributes or an explicit `tabindex` specified, elements mapped to the `Text` Control Type will be represented as accessible objects in the accessibility tree.
    • -
    -
  • -
  • - AXAPI: -
      -
    • User agents should return a user-presentable, localized string value for the Mac Accessibility AXRoleDescription.
    • -
    -
  • -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Mappings of HTML elements to platform accessibility APIs: ARIA, MSAA + UIA Express, MSAA + IAccessible2, UIA, ATK, and AX
Element[[wai-aria-1.2]]Computed Role MSAA + IAccessible2UIAATKAXComments
- `a` - (represents a hyperlink) - - `link` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `a` - (no `href` attribute) - - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`abbr` - No corresponding role -
html-abbr
-
- Roles: `ROLE_SYSTEM_TEXT`; `IA2_ROLE_TEXT_FRAME` -
-
- Object attributes: - "abbr" attribute on the containing `td` if a single child, text content used as a value -
-
-
- Control Type: `Text` -
-
-
- Role: `ATK_ROLE_STATIC` -
-
- Object attributes: - "abbr" attribute on the containing `td` if a single child, text content used as a value -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"group"` -
-
`address` - `group` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `area` - (represents a hyperlink) - - `link` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `area` - (no `href` attribute) - - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `article` - - `article` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `aside` (scoped to the `body` or `main` element) - - `complementary` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `aside` - (scoped to a sectioning content element) - - `complementary` role if the `aside` element has an accessible name. - Otherwise, `generic` role. -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `audio` - No corresponding role
html-audio
-
- Role: `ROLE_SYSTEM_GROUPING` -
-
-
- Control Type: `Group` -
-
- Localized Control Type: `"audio"` -
-
- Note: If the `controls` attribute is present, UI controls (e.g., play, volume) are exposed as children of the `audio` element in the accessibility tree, and mapped as appropriate for the type of control (e.g., `button` or `slider`). -
-
- Text objects associated with loading or error messages, and any UI control not currently displayed, MAY be present in the accessibility tree and marked as hidden or off-screen. -
-
-
- Role: `ATK_ROLE_AUDIO` -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `AXAudio` -
-
- AXRoleDescription: `"audio playback"` -
-
- Note: If the `controls` attribute is present, UI controls (e.g., play, volume) are exposed as descendants of an accessible object with a role of `toolbar`, and mapped as appropriate for the type of control (e.g., `button` or `slider`). -
-
- autonomous custom element - If the author assigned a conforming ARIA role using the `role` attribute, map to that role. Otherwise, the `generic` role.
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `b` - - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- Exposed by platform specific bold font weight text styles. -
- `base` - No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
- `bdi` - - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- IA2/ATK: May affect on "writing-mode" text attribute on its text container. -
- `bdo` - - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- IA2/ATK: Exposed as "writing-mode" text attribute on its text container. -
- `blockquote` - `blockquote` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `body` - `generic` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`br`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
May be exposed as '\n' character by the platform interface.
- `button` - - `button` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- A `button`'s mapping will change if the - `aria-pressed` or - `aria-haspopup` attributes are specified. -
- `canvas` - No corresponding role
html-canvas
-
- Roles: `ROLE_SYSTEM_GRAPHIC`; `IA2_ROLE_CANVAS` -
-
-
- Control Type: `Image` -
-
- Descendants of the `canvas` element are mapped separately. -
-
-
- Role: `ATK_ROLE_CANVAS` -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `""` -
-
- `caption` - `caption` role
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
- Relations: - `IA2_RELATION_LABEL_FOR` with parent `table` -
-
-
Use WAI-ARIA mapping
-
- Other properties: The `LabeledBy` property for the parent `table` element points to the - UIA element for the `caption` element. -
-
-
Use WAI-ARIA mapping
-
- Relations: - `ATK_RELATION_LABEL_FOR` with parent `table` -
-
-
Use WAI-ARIA mapping
-
- Relations: - `ATK_RELATION_LABEL_FOR` with parent `table` -
-
If a descendant of a `table`, the first instance of a `caption` element will provide the `table` its accessible name.
- `cite` - No corresponding role
html-cite
-
- No accessible object. Styles used are mapped into text attributes on its text container. -
-
-
- No accessible object. Styles used are exposed by UIA text attributes of the `TextRange` Control Pattern implemented on a parent accessible object. -
-
-
- No accessible object. Styles used are mapped into text attributes on its text container. -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"group"` -
-
- `code` - `code` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `col` - No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
- `colgroup` - No corresponding role
Not mapped
-
- Role: `ROLE_SYSTEM_GROUPING` -
-
-
-
- Control Type: `Group` -
-
- Localized Control Type: `"colgroup"` -
-
-
Not mapped
Not mapped
- `data` - - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `datalist` - (represents pre-defined options for `input` element) - - `listbox` role, with the `aria-multiselectable` property set to "true" if the `datalist`'s selection model allows multiple `option` elements to be selected at a time, and "false" otherwise -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- If `datalist` is not linked to a proper `input` element, then `datalist` element is not mapped to accessibility APIs. -
- `dd` - - `definition` role - -
Use WAI-ARIA mapping
-
- Editorial Note: This value may change upon resolution of ARIA #1662. -
-
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `del` - - `deletion` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `details` - - `group` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
- Localized Control Type: `"details"` -
-
-
Use WAI-ARIA mapping
-
- Relations: `"ATK_RELATION_DETAILS_FOR"` -
-
Use WAI-ARIA mapping
- `dfn` - - `term` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `dialog` - - `dialog` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- See also the `dialog` element's `open` attribute. -
- `div` - - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `dl` - No corresponding role -
list
-
- Editorial Note: This value may change upon resolution of ARIA #1662. -
-
-
- Role: `ROLE_SYSTEM_LIST` -
-
- States: `STATE_SYSTEM_READONLY` -
-
-
- Control Type: `List` -
-
-
- Role: `ATK_ROLE_DESCRIPTION_LIST` -
-
-
- AXRole: `AXList` -
-
- AXSubrole: `AXDefinitionList` -
-
- AXRoleDescription: `"definition list"` -
-
- `dt` - - `term` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `em` - - `emphasis` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `embed` - No corresponding role
html-embed
-
- Roles: `ROLE_SYSTEM_CLIENT`; `IA2_ROLE_EMBEDDED_OBJECT` -
-
- States: `STATE_SYSTEM_UNAVAILABLE` for windowless plugin -
-
-
- Control Type: `Pane` -
-
-
- Role: `ATK_ROLE_EMBEDDED` -
-
Depends on format of data file
- `fieldset` - - `group` role -
Use WAI-ARIA mapping
-
- Role: Use WAI-ARIA mapping -
-
- Relations: `IA2_RELATION_LABELLED_BY` with child `legend` element -
-
-
- Role: Use WAI-ARIA mapping -
-
-
- Role: Use WAI-ARIA mapping -
-
- Relations: `ATK_RELATION_LABELLED_BY` with child `legend` element -
-
-
- Role: Use WAI-ARIA mapping -
-
- AXSubrole: `AXFieldset` -
-
-
- AXDescription: value from child `legend` subtree -
-
-
- `figcaption` - No corresponding role
caption
-
- Roles: `ROLE_SYSTEM_TEXT`; `IA2_ROLE_CAPTION` -
-
- Relations: `IA2_RELATION_LABEL_FOR` with parent `figure` element -
-
-
- Control Type: `Text` -
-
-
- Role: `ATK_ROLE_CAPTION` -
-
- Relations: - `ATK_RELATION_LABEL_FOR` with parent `figure` element -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"group"` -
-
- `figure` - - `figure` role -
Use WAI-ARIA mapping
-
- Role: Use WAI-ARIA mapping -
-
- Relations: `IA2_RELATION_LABELLED_BY` with child `figcaption` element -
-
-
- Role: Use WAI-ARIA mapping -
-
- Accessible name derived from `figcaption` according to the `figure` Element Accessible Name Computation -
-
-
- Role: Use WAI-ARIA mapping
-
- Name: related `figcaption` content -
-
- Relations: `ATK_RELATION_LABELLED_BY` with child `figcaption` element -
-
-
- AXRole: Use WAI-ARIA mapping -
-
- `form` - - `form` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
If a `form` has no accessible name:
-
- Role: `ATK_ROLE_FORM` -
-
Use WAI-ARIA mapping
- If a `form` has no accessible name, - do not expose the element as a landmark. -
- form-associated custom element - If the author assigned a conforming ARIA role using the `role` attribute, map to that role. Otherwise, the `generic` role.
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `h1`, `h2`, `h3`, `h4`, `h5`, and `h6` - - `heading` role, with the `aria-level` property set to the number in the element's tag name. -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`head`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
- `header` (scoped to the `body` element) - - `banner` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `header` (scoped to the `main` element, or a sectioning content element) - - `generic` role -
- Editorial Note: This value may change upon resolution of ARIA #1915. -
-
Use WAI-ARIA mapping
Use WAI-ARIA mapping
-
- Control Type: `Group` -
-
- Localized Control Type: `"header"` -
-
-
- Role: `ATK_ROLE_HEADER` -
-
Use WAI-ARIA mapping
- If a `header` is not scoped to the `body` element, - do not expose the element as a `banner` landmark. -
- `hgroup` - `group` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- If an `hgroup` contains multiple heading elements, then the heading element with the highest priority level - MAY be treated as the sole heading of the `hgroup`. All other heading elements MAY instead be exposed as if they - were `p` elements. See `paragraph` role on Core AAM. -
- `hr` - `separator` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `html` - `document` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `i` - - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- Exposed by platform specific italic text styles. -
- `iframe` - No corresponding role
html-iframe
-
- Role: `IA2_ROLE_INTERNAL_FRAME` -
-
-
- Control Type: `Pane` -
-
-
- Role: `ATK_ROLE_INTERNAL_FRAME` -
-
-
- AXRole: `AXWebArea` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"html content"` -
-
- `img` - `img` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `img` - (`alt` - attribute value is an empty string, i.e. `alt=""` or `alt` with no value in the markup) - - -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` (`type` attribute in the - Button state) - - `button` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` - (`type` attribute in the - Checkbox state) - - `checkbox` role, with the - `aria-checked` state set to "mixed" if the element's - `indeterminate` IDL attribute is true, or "true" if the element's - checkedness is true, or "false" otherwise -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` (`type` attribute in the - Color state) - No corresponding role
html-input-color
-
If implemented as a textbox:
-
Roles: `ROLE_SYSTEM_TEXT`
-
If implemented as a color picker:
-
Roles: `IA2_ROLE_COLOR_CHOOSER`
-
-
If implemented as a textbox:
-
Control Type: `Edit`
-
Localized Control Type: "edit"
-
If implemented as a color picker:
-
Control Type: `button`
-
Localized Control Type: "color picker"
- -
-
- If implemented as a button, use WAI-ARIA mapping for `button`. -
-
- If implemented as a textbox, use WAI-ARIA mapping for `textbox`. -
-
-
If implemented as a textbox:
-
AXRole: `AXTextField`
-
AXSubrole: `(nil)`
-
AXRoleDescription: `"text field"`
-
If implemented as a color picker:
-
AXRole: `AXColorWell`
-
AXSubrole: `(nil)`
-
AXRoleDescription: `"color well"`
-
-
- If implemented as a color picker, any UI controls presented for selecting a color are exposed in the accessibility tree, associated with the `input` element, and mapped as appropriate for the type of control (e.g. button or slider). -
-
- `input` (`type` attribute in the - Date state) - No corresponding role
html-input-date
-
If implemented as a textbox:
-
- Role: `ROLE_SYSTEM_TEXT` -
-
- Object attributes: `text-input-type:date` -
-
If implemented as a date picker:
-
- Role: `IA2_ROLE_DATE_EDITOR` -
-
-
- Depends on UI design of implementation. The UI in Windows 10 Edge, for example, is a composite of multiple spinners. -
-
-
- Role: `ATK_ROLE_CALENDAR` -
-
-
- AXRole: `AXDateField` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"date field"` -
-
- `input` - (`type` attribute in the - Local Date and Time state) - No corresponding role -
- Role: `IA2_ROLE_DATE_EDITOR` -
-
-
- Depends on UI design of implementation. The UI in Windows 10 Edge, for Example, is a composite of multiple spinners. -
-
-
- Role: `ATK_ROLE_CALENDAR` -
-
-
- AXRole: `AXTextField` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"text field"` -
-
- `input` (`type` attribute in the - E-mail state with no suggestions source element) - `textbox` role
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
Object attributes: `text-input-type:email`
-
-
Use WAI-ARIA mapping
-
- Localized Control Type: `"email"` -
-
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` (`type` attribute in the - File Upload state) - No corresponding role
html-input-file
-
- Implementation dependent. If represented by a container with a button a text label inside then: -
-
- Roles: `IA2_ROLE_TEXT_FRAME` -
-
- Children: `ROLE_SYSTEM_PUSHBUTTON` and `IA2_ROLE_LABEL` for a button and a text label elements. -
-
-
- Can be rendered as a single button control, or as a button control with a text input field. -
-
Button control:
-
- Control Type: `Button` -
-
Text input field:
-
- Control Type: `Edit` -
-
- Localized Control Type: `"file"` -
-
-
- Role: `ATK_ROLE_STATIC` -
-
- Children: - `ATK_ROLE_PUSH_BUTTON` when pressed `ATK_ROLE_FILE_CHOOSER` dialog shown -
-
-
- AXRole: `AXButton` -
-
- AXSubrole: `AXFileUploadButton` -
-
- AXRoleDescription: `file upload button` -
-
- `input` - (`type` attribute in the - Hidden state) - No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
- `input` - (`type` attribute in the - Image Button state) - `button` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` - (`type` attribute in the - Month state) - No corresponding role
html-input-month
-
- Role: `IA2_ROLE_DATE_EDITOR` -
-
-
- Depends on UI design of implementation. The UI in Windows 10 Edge, for Example, is a composite of multiple spinners. -
-
-
- Role: `ATK_ROLE_DATE_EDITOR` -
-
-
- AXRole: `AXTextField` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"text field"` -
-
- `input` - (`type` attribute in the - Number state) - - `spinbutton` role -
Use WAI-ARIA mapping
-
- If implemented as a spin button, use WAI-ARIA mapping for - `spinbutton`. -
-
- If implemented as a text input, use WAI-ARIA mapping for - `textbox`. -
-
- Object attributes: `text-input-type:number` -
-
-
If implemented as a spin button, use WAI-ARIA mapping for `spinbutton`.
-
If implemented as a text input:
-
- Control Type: `Edit` -
-
- Localized Control Type: `"number"` -
-
-
- If implemented as a spin button, use WAI-ARIA mapping for `spinbutton`. -
-
- If implemented as a text input, use WAI-ARIA mapping for `textbox`. -
-
- Object attributes: `text-input-type:number` -
-
Use WAI-ARIA mapping
- `input` - (`type` attribute in the - Password state) - No corresponding role
html-input-password
-
Role: `ROLE_SYSTEM_TEXT`
-
- States: `STATE_SYSTEM_PROTECTED`; `IA2_STATE_SINGLE_LINE`; `STATE_SYSTEM_READONLY` if readonly, otherwise `IA2_STATE_EDITABLE` -
-
-
- Control Type: `Edit` -
-
- Localized Control Type: `"password"` -
-
- Other properties: Set `isPassword` to `true` -
-
-
Role: `ATK_ROLE_PASSWORD_TEXT`
-
- States: `ATK_STATE_SINGLE_LINE`; `ATK_STATE_READ_ONLY` if readonly, otherwise `ATK_STATE_EDITABLE` -
-
-
- AXRole: `AXTextField` -
-
- AXSubrole: `AXSecureTextField` -
-
- AXRoleDescription: `"secure text field"` -
-
- `input` - (`type` attribute in the - Radio Button state) - - `radio` role, with the - `aria-checked` state set to "true" if the element's - checkedness is true, or "false" otherwise. - With `aria-setsize` value reflecting number of `type=radio input` elements within the - radio button group - and `aria-posinset` value reflecting the elements position within the radio button group. -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` - (`type` attribute in the - Range state) - - `slider` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` - (`type` attribute in the - Reset Button state) - - `button` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` - - (`type` attribute in the - Submit Button state) - - - `button` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` - - (`type` attribute in the - Telephone state with no - suggestions source element) - - - `textbox` role -
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
- Object attributes: `text-input-type:telephone` -
-
-
Use WAI-ARIA mapping
-
- Localized Control Type: `"telephone"` -
-
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` - - (`type` attribute in the - Text state with no - suggestions source element) - - `textbox` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
An `input` with a missing or invalid `type` attribute - defaults to the Text state.
- `input` - - (`type` attribute in the - Text, - Search, - Telephone, - URL, or - E-mail states with a - suggestions source element) - - - `combobox` role, with the - `aria-controls` property set to the same value as the - `list` attribute -
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
- Object attributes: `text-input-type:as per input type` -
-
-
Use WAI-ARIA mapping
-
- Other properties: `ControllerFor` points to the suggestions source element -
-
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- See also `list` attribute mappings. -
- `input` - (`type` attribute in the - Time state) - No corresponding role
html-input-time
-
- Role: `ROLE_SYSTEM_SPINBUTTON` if implemented as a simple widget; `ROLE_SYSTEM_GROUPING` with child controls mapped as appropriate if implemented as a complex widget -
-
- Object attributes: `text-input-type:time` -
-
-
- Depends on UI design of implementation. The UI in Windows 10 Edge, for Example, is a composite of multiple spinners. -
-
-
-

- Role: `ATK_ROLE_SPINBUTTON` - if implemented as a simple widget.
- If implemented as a complex widget use:
- Role: `ROLE_PANEL` and map child controls as appropriate. -

-
-
-
- AXRole: `AXTimeField` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"time field"` -
-
- `input` - (`type` attribute in the - URL state with no suggestions source element) - `textbox` role
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
- Object attributes: `text-input-type:url` -
-
-
Use WAI-ARIA mapping
-
Localized Control Type: `"url"`
-
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `input` - - (`type` attribute in the - Week state) - - No corresponding role
html-imput-week
-
- Role: `IA2_ROLE_DATE_EDITOR` -
-
- Object attributes: `text-input-type:week` -
-
-
- Depends on UI design of implementation. The UI in Windows 10 Edge, for Example, is a composite of multiple spinners. -
-
-
- Role: `ATK_ROLE_CALENDAR` -
-
-
- AXRole: `AXTextField` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"text field"` -
-
- `ins` - - `insertion` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`kbd`No corresponding role
html-kbd
-
No accessible object.
-
- Text attributes: `font-family:monospace` on the text container -
-
-
- No accessible object. Styles used are exposed by UIA text attribute identifiers of the `TextRange` Control Pattern implemented on a parent accessible object. -
-
-
- No accessible object. Mapped into "font-family:monospace" text attribute on its text container. -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"group"` -
-
`label`No corresponding role
html-label
-
- Roles: `ROLE_SYSTEM_STATICTEXT`; `IA2_ROLE_LABEL` -
-
- Relations: - `IA2_RELATION_LABEL_FOR` with a labelable element - that is child to the `label` or referred to by the `label` element's `for` attribute. - The associated labelable element has `IA2_RELATION_LABELLED_BY` pointing to the `label`. -
-
-
- Control Type: `Text` -
-
- Relations: -
- When the `label` element contains a labelable element, the `LabeledBy` property for - the element points to the UIA element for the `label` element. -
-
- When the `label` element has a `for` attribute referencing a - labelable element, the `LabeledBy` property for the referenced element points to - the UIA element for the `label` element. -
-
-
-
- Role: `ATK_ROLE_LABEL` -
-
- Relations: - `ATK_RELATION_LABEL_FOR` for a child labelable element or - labelable element referred by `for` attribute. - Note, related labelable element provides `ATK_RELATION_LABELLED_BY` pointing to the `label`. -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"group"` -
-
`legend`No corresponding role
html-legend
-
- Roles: `ROLE_SYSTEM_STATICTEXT`; `IA2_ROLE_LABEL` -
-
- Relations: `IA2_RELATION_LABEL_FOR` with the parent `fieldset` -
-
-
- Control Type: `Text` -
-
- Other properties: - The `LabeledBy` property for the parent - `fieldset` points to the UIA element for the `legend` element. -
-
-
- Role: `ATK_ROLE_LABEL` -
-
- Relations: - `ATK_RELATION_LABEL_FOR` with parent `fieldset` element -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"group"` -
-
- `li` - - `listitem` role with - `aria-setsize` value reflecting number of - `li` elements within the parent `ol`, `menu` or `ul` - and `aria-posinset` - value reflecting the `li` elements position within the set. -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- If `li` element is not a child of `ol` , `menu` or `ul`, or if the containing - list element is no longer exposed with a `list` role, then expose the `li` element with a `generic` role. -
`main``main` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`map`No corresponding role
html-map
-
- Not mapped if used as an image map. Otherwise, -
-
- Role: `IA2_ROLE_TEXT_FRAME` -
-
-
Not mapped
-
-
- Not mapped if used as an image map, otherwise: -
-
- Role: `ATK_ROLE_STATIC` -
-
-
- Role: `AXImageMap` if used as an image map. Otherwise,
- Role: `AXGroup` if associated with an `img` with no `alt`. Otherwise,
- not mapped if not associated with an `img`. -
-
`mark``mark` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `math` - See comments
See comments
See commentsSee commentsSee commentsSee comments - Mapping for `math` is defined by MathML AAM 1.0. -
- `menu` - `list` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
-
- The `menu` element is a semantic alternative to the `ul` element. - It has no implemented mappings or behavior that reflect the semantics of the ARIA - `menu` role. -
- -
`meta`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`meter` - `meter` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`nav``navigation` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`noscript`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`object`No corresponding role
html-object
-
Depends on format of data file. If it contains a plugin then,
-
- Role: `IA2_ROLE_EMBEDDED_OBJECT` -
-
- States: - `STATE_SYSTEM_UNAVAILABLE` for windowless plugin -
-
-
Depends on format of data file.
-
-
- Depends on format of data file. If contains a plugin then -
-
- Role: - `ATK_ROLE_EMBEDDED` -
-
Depends on format of data file.
`ol``list` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`optgroup``group` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `option` (in a list of options or represents a suggestion in a `datalist`) - - `option` role, with the `aria-selected` state set to "true" if the element's selectedness is true, or "false" otherwise. -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`output``status` role
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
- Relations: `IA2_RELATION_LABELLED_BY` with associated `label` element -
-
Use WAI-ARIA mapping
-
Use WAI-ARIA mapping
-
- Relations: `ATK_RELATION_LABELLED_BY` with associated `label` element -
-
-
Use WAI-ARIA mapping
-
`AXDescription`: value from associated `label` element subtree.
`p` - `paragraph` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`param`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`param` is obsolete in HTML
`picture`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`pre` - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `progress` - - `progressbar` role, with, if the progress bar is determinate, the `aria-valuemax` property set to the maximum value of the progress bar, the `aria-valuemin` property set to zero, and the `aria-valuenow` property set to the current value of the progress bar -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`q` - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `::before` and `::after` CSS pseudo content is used by platforms to render the element's quotation marks. -
`rp`No corresponding role
htmp-rp
-
- No accessible object. No child elements are exposed if - `ruby` is supported by the browser. -
-
-
- No accessible object. -
-
-
- No accessible object. No child elements are - exposed if `ruby` is supported by the browser. -
-
Not mapped
`rt`No corresponding role
html-rt
-
- No accessible object. No child elements are exposed if - `ruby` is supported by the browser. -
-
-
- No accessible object. -
-
-
- No accessible object. -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `AXRubyText` -
-
- AXRoleDescription: `"group"` -
-
`ruby`No corresponding role
html-ruby
-
- Role: `ROLE_SYSTEM_TEXT`; `IA2_ROLE_TEXT_FRAME` -
-
-
- Control Type: `Text` -
-
- Localized Control Type: `"ruby"` -
-
-
- Role: `ATK_ROLE_STATIC` -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `AXRubyInline` -
-
- AXRoleDescription: `"group"` -
-
`s` - `deletion` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`samp``generic` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `script` - No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`section` - `region` role if the `section` element has an - accessible name. Otherwise, the `generic` role. -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `select` - - (with a `multiple` attribute or - `size` attribute having value greater than `1`) - - `listbox` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `select` - - (with NO `multiple` attribute - and NO `size` attribute having value greater than `1`) - - `combobox` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`slot`No corresponding role
Use WAI-ARIA mapping
Not mapped
Not mapped
Not mapped
Not mapped
`small` - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- Exposed by platform specific font size styles. -
`source`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`span` - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`strong` - `strong` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`style`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
-
- Note: There are instances where CSS properties can affect what is exposed by accessibility APIs. - For instance, `display: none` or `visibility: hidden` will remove an element from the accessibility tree - and hide its presence from assistive technologies. -
-
`sub` - `subscript` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `summary` - No corresponding role -
-

If the element is the first child of its type within a parent `details` element: `html-summary`

-

Otherwise, if it is not the first child of its type of a parent `details` element, - or it is not a child of a `details` element: `generic` role

-
-
-
- Role: `ROLE_SYSTEM_PUSHBUTTON` -
-
- States: - `STATE_SYSTEM_EXPANDED` / `STATE_SYSTEM_COLLAPSED` -
-
- Actions: `expand` / `collapse` -
-
-
- Control Type: `Button` -
-
- Control Pattern: `ExpandCollapse` -
-
-
- Role: `ROLE_TOGGLE_BUTTON` -
-
- Relations: `ATK_RELATION_DETAILS` -
-
-
- AXRole: `AXDisclosureTriangle` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"disclosure triangle"` -
-
`sup` - `superscript` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`svg` - See comments -
See comments
See commentsSee commentsSee commentsSee comments - Mapping for `svg` is defined by [[[svg-aam-1.0]]]. - See also Graphics Accessibility API Role Mappings -
`table``table` role
Use WAI-ARIA mapping
Use WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mapping
`tbody``rowgroup` role
Use WAI-ARIA mapping
Use WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mapping
- `td` - (ancestor `table` element has - `table` role) - `cell` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `td` - (ancestor `table` element has - `grid` or - `treegrid` role) - `gridcell` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`template`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`textarea` - `textbox` role, - with the `aria-multiline` property set to "true" -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`tfoot``rowgroup` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `th` - (is not a - column header, - row header, - column group header or - row group header, - and ancestor `table` element has - `table` role) - - `cell` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `th` - (is not a - column header, - row header, - column group header or - row group header, - and ancestor `table` element has - `grid` - or `treegrid` role) - - `gridcell` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `th` - (is a column header or column group header) - `columnheader` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- `th` - (is a row header or row group header) - `rowheader` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`thead``rowgroup` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`time` - `time` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`title`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
A `title` element provides the accessible name for its document.
`tr``row` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`track`No corresponding role
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`u` - `generic` role -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- Exposed by platform specific underline text styles. -
`ul``list` role
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`var`No corresponding role
html-var
-
No accessible object. Styles used are mapped to text attributes on its text container.
-
-
No accessible object. Styles used are exposed by UIA text attribute identifiers of the `TextRange` Control Pattern implemented on a parent accessible object. -
-
-
No accessible object. Styles used are mapped to text attributes on its text container.
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"group"` -
-
`video`No corresponding role
html-video
-
- Role: `ROLE_SYSTEM_GROUPING` -
-
-
- Control Type: `Group` -
-
Localized Control Type: `"group"`
-
- Note: If the `controls` attribute is present, UI controls (e.g., play, volume) are exposed as children of the `video` element in the accessibility tree, and mapped as appropriate for the type of control (e.g., `button` or `slider`). -
-
Text objects associated with loading or error messages, and any UI control not currently displayed, MAY be present in the accessibility tree and marked as hidden or off-screen.
-
-
- Role: `ATK_ROLE_VIDEO` -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `AXVideo` -
-
- AXRoleDescription: `"video playback"` -
-
- Note: If the `controls` attribute is present, UI controls (e.g., play, volume) are exposed as descendants of an accessible object with a role of `toolbar`, and mapped as appropriate for the type of control (e.g., `button` or `slider`). -
-
`wbr`No corresponding role
Not mapped
-
- If a line break is added, expose it with `IAccessibleText` on the text container -
-
Not mapped
-
- A line break if added is exposed via Text interface on its text container -
-
-
- AXRole: `AXGroup` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"group"` -
-
-
-
-
-

HTML Attribute State and Property Mappings

-
    -
  • HTML attributes with default WAI-ARIA state and property semantics MUST be mapped to platform accessibility APIs according to those WAI-ARIA state and property mappings as defined in the [[core-aam-1.2]] specification.
  • -
  • A '?' in a cell indicates the data has yet to be provided.
  • -
  • "Not mapped" (Not Applicable) means the attribute does not need to be exposed via an accessibility API. This is usually because the attribute is not displayed as part of the user interface. -
    - In some cases, while not directly exposed to accessibility APIs, an attribute can still impact the accessibility of an element. e.g., `autoplay` will automatically start playing `video` or `audio` elements. -
    -
  • -
  • All elements having an accessible object in IAccessible2 mapping are supposed to implement IAccessible, IAccessible2 and IAccessible2_2 interfaces.
  • -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Mappings of HTML attributes (excluding event handler content attributes) to platform accessibility APIs: ARIA, MSAA + UIA Express, MSAA + IAccessible2, UIA, ATK, and AX
AttributeElement(s)[[WAI-ARIA-1.2]]MSAA + IAccessible2UIAATKAXComments
`abbr` - `th` -
Not mapped
-
- Object attributes: - "abbr" until child `abbr` element is provided -
-
Not mapped
-
- Object attributes: - "abbr" until child `abbr` element is provided -
-
`AXDescription: <value>`
`accept` - `input` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`accept-charset` - `form` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`accesskey` - `HTML elements` -
Not mapped
-
- A key binding accessible by - `accKeyboardShortcut` - and `IAccessibleAction::keyBinding` -
-
-
- Properties: `AccessKey: <value>` -
-
-
- `atk_action_get_keybinding` -
-
`AXAccessKey: <value>`
`action` - `form` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`allow` - `iframe` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`allowfullscreen` - `iframe` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`alt` - `area`; - `img`; - `input` -
Not mapped
- Used for accessible name, - exposed via `accName` - -
- Properties: - `Name` -
-
-
- Used for accessible name, exposed via `atk_object_get_name` -
-
`AXDescription: <value>`
`as` - `link` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`async` - `script` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`autocapitalize` - HTML elements -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`autocomplete` - `form` - -

`aria-autocomplete`

-
- Note: the ARIA attribute and the HTML attribute have disparate features. -
-
-
- States: - `STATE_SUPPORTS_AUTOCOMPLETION` on text form controls until the value is overridden by control -
-
Not mapped
-
- States: - `ATK_STATE_SUPPORTS_AUTOCOMPLETION` on text form controls until the value is overridden by control -
-
Not mapped
- If the element includes both `autocomplete` and `aria-autocomplete` attributes with valid values, - User Agents MUST expose only the `autocomplete` attribute value. The `aria-autocomplete` attribute is - not valid on a `form` element. -
`autocomplete` - `input`, `select` and `textarea` - -

`aria-autocomplete`

-
- Note: the ARIA attribute and the HTML attribute have disparate features. -
-
-
- States: `STATE_SUPPORTS_AUTOCOMPLETION` -
-
Not mapped
-
- States: `ATK_STATE_SUPPORTS_AUTOCOMPLETION` -
-
Not mapped
- If the element includes both `autocomplete` and `aria-autocomplete` attributes with valid values, - User Agents MUST expose only the `autocomplete` attribute value. -
`autofocus` - HTML elements - Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`autoplay` - `audio` and `video` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`blocking` - `link`; - `script`; - `style` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`charset` - `meta` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`checked` (if present) - `input` `type=checkbox` or `type=radio` - - `aria-checked`="true" -
Use WAI-ARIA mapping
Property: `Toggle.ToggleState: On (1)`
Use WAI-ARIA mapping
`AXValue: 1` - If an `input` element in the `checkbox` or `radio` state includes both the `checked` attribute and the `aria-checked` attribute with a - valid value, User Agents MUST expose only the `checked` attribute value. -
`checked` (if absent) - `input` `type=checkbox` or `type=radio` - - `aria-checked`="false" -
Use WAI-ARIA mapping
Property: `Toggle.ToggleState: Off (0)`
Use WAI-ARIA mapping
`AXValue: 0` - An `input` element in the `checkbox` or `radio` state without a `checked` attribute has an implicit "false" state. - User Agents MUST ignore an `aria-checked` attribute which conflicts with the native element's implicit checked state. -
`cite` - `blockquote`; - `del` and `ins`; - `q` -
Not mapped
Not mapped
Not mapped
Not mapped
`AXURL: <value>`
`class` - HTML elements -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`color` - `link` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`cols` - `textarea` -
Not mapped
Not mapped
Not mapped
Not mapped
`AXRangeForLine: <value>`
Not mapped
`colspan` - `td` and `th` - `aria-colspan`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`content` - `meta` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`contenteditable` - HTML elements - - Not mapped - -

If the element is in the editable state, the following mappings apply to the element and every nested accessible object with the - exception of those which have been specified in the `false` state.

-
- States: - `IA2_STATE_EDITABLE` and `IA2_STATE_MULTI_LINE` -
-
- Interfaces: - `IAccessibleEditableText` -
-

If the element is in the `false` state: not mapped.

-

If the element is in the `inherit` state: match the editable state of its parent element.

-
-

If the element is in the editable state, the following mappings apply to the element and every nested accessible object with the - exception of those which have been specified in the `false` state.

-
- Control Pattern: `TextEdit` -
-
- Property: `AriaProperties.multiline:true` -
-

If the element is in the `false` state: not mapped.

-

If the element is in the `inherit` state: match the editable state of its parent element.

-
-

If the element is in the editable state, the following mappings apply to the element and every nested accessible object with the - exception of those which have been specified in the `false` state.

-
- States: - `ATK_STATE_EDITABLE` and `ATK_STATE_MULTI_LINE` -
-
- Interfaces: `AtkEditableText` -
-

If the element is in the `false` state: not mapped.

-

If the element is in the `inherit` state: match the editable state of its parent element.

-
- Role: - AXTextArea -
Use WAI-ARIA mapping
-
- If the element is set to `contenteditable` and `aria-readonly="true"`, User Agents MUST expose only the `contenteditable` state. -
`controls` - `audio` and `video` -
Not mapped
Not mapped
Not mapped
Not mapped
Controls exposed as `AXToolbar`
`coords` - `area` -
Not mapped
-
- Defines an accessible object's dimensions (`IAccessible::accLocation`) -
-
-
- Defines an accessible object's dimensions (`BoundingRectangle`) -
-
-
- Defines an accessible object's dimensions, exposed via `atk_component_get_position` and `atk_component_get_size` -
-
-
- Defines an accessible object's dimensions, exposed via `Frame` property -
-
`crossorigin` - `audio`; - `img`; - `link`; - `script`; - `video` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`data` - `object` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`datetime` - `del` and `ins` -
Not mapped
-
- Object attributes: `datetime: <value>` -
-
Not mapped
-
- Object attributes: `datetime: <value>` -
-
`AXDateTimeValue: <value>`
`datetime` - `time` -
Not mapped
-
- Object attributes: `datetime: <value>` -
-
-
- Properties: `FullDescription: <value>` -
-
-
- Object attributes: `datetime: <value>` -
-
`AXDateTimeValue: <value>`
`decoding` - `img` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`default` - `track` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`defer` - `script` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`dir` - HTML elements -
Not mapped
-
- Exposed as "writing-mode" text attribute on the text container. -
-
-
- Exposed by `TextFlowDirections` attribute of the `TextRange` Control Pattern implemented on a parent accessible object. -
-
-
- Exposed as "writing-mode" text attribute on the text container. -
-
Not mapped
`dir` - `bdo` -
Not mapped
-
- Exposed as "writing-mode" text attribute on the text container. -
-
-
- Exposed by `TextFlowDirections` attribute of the `TextRange` Control Pattern implemented on a parent accessible object. -
-
-
- Exposed as "writing-mode" text attribute on the text container. -
-
Not mapped
`dirname` - `input` and - `textarea` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`disabled` - `button`; - `input`; - `optgroup`; - `option`; - `select`; - `textarea`; - form-associated custom element - `aria-disabled="true"`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- If the element has both the `disabled` attribute and the `aria-disabled` attribute with a valid value, - User Agents MUST expose only the `disabled` attribute value. -
`disabled` - `fieldset` - `aria-disabled="true"`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
-

Form controls within a valid [^legend^] child element of a `fieldset` with a `disabled` attribute - do not become disabled.

-

If the element has both the `disabled` attribute and the `aria-disabled` attribute with a valid value, - User Agents MUST expose only the `disabled` attribute value.

-
`download` - `a` and `area` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`draggable` - HTML elements -
Not mapped
-
- Object attributes: draggable:true -
-
Not mapped
-
- Object attributes: draggable:true -
-
Not mapped
`enctype` - `form` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`enterkeyhint` - HTML elements -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
Modifies the action label (or icon) to present for the - enter key on virtual keyboards.
`fetchpriority` - `img`; - `link`; - `script` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`for` - `label` -
Not mapped
-
- Used for accessible name -
-
- Relations: - `IA2_RELATION_LABEL_FOR` and `IA2_RELATION_LABEL_BY` relations between - `label` and referred labelable element -
-
-
- Used for accessible name -
-
- When the `label` element has a `for` attribute referencing another labelable element, - the `LabeledBy` property for the referenced element points to the UIA element for the `label` element. -
-
-
- Used for accessible name -
-
- Relations: - `ATK_RELATION_LABEL_FOR` and `ATK_RELATION_LABEL_BY` relations between - `label` and referred labelable element -
-
-
- Used for accessible name -
-
`for` - `output` -
Not mapped
-
- Relations: - `IA2_RELATION_CONTROLLED_BY` with an element pointed by the attribute. Paired element exposes `IA2_RELATION_CONTROLLER_FOR` relation. -
-
Not mapped
-
- Relations: - `ATK_RELATION_CONTROLLED_BY` with an element pointed by the attribute. Paired element exposes `ATK_RELATION_CONTROLLER_FOR` relation. -
-
Not mapped
`form` - `button`; - `fieldset`; - `input`; - `label`; - `object`; - `output`; - `select`; - `textarea`; - form-associated custom element -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`formaction` - `button`; - `input` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`formenctype` - `button`; - `input` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`formmethod` - `button`; - `input` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`formnovalidate` - `button`; - `input` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`formtarget` - `button`; `input` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`headers` - `td`; - `th` -
Not mapped
-
- Links the cell to its header cells. Exposed via `IAccessibleTableCell::rowHeaderCells` and `IAccessibleTableCell::columnHeaderCells`. -
-
-
- Links the cell to its header cells. Exposed via `Table.ItemColumnHeaderItems` and `Table.ItemRowHeaderItems`. -
-
-
- Links the cell to its row and column header cells - (note, only one row and one column header cells can be exposed because of API restrictions). - See `atk_table_get_row_header` and `atk_table_get_column_header`. -
-
Expose via `AXColumnHeaderUIElements` and `AXRowHeaderUIElements`
`height` - `canvas`; - `embed`; - `iframe`; - `img`; - `input`; - `object`; - `source` (in `picture`); - `video` -
Not mapped
-
- Defines an accessible object's height (`IAccessible::accLocation`) -
-
-
- Defines an accessible object's height (`BoundingRectangle`) -
-
-
- Defines an accessible object's height (`atk_component_get_size`) -
-
-
- Defines an accessible object's height - (`AXSize` property) -
-
- `hidden` - - HTML elements - - `aria-hidden="true"` if the element retains its user agent default styling of `display: none`. Otherwise, if no other method for hiding the content is used (e.g., `visibility: hidden`) then it is not mapped. - Use WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mapping
`high` - `meter` - Not mapped
Not mapped
`RangeValue.Maximum`
Not mapped
Not mapped
`href``a`; `area`
Not mapped
-
- Creates a link accessible object. For details, refer to - `a` and `area` element mappings. -
-
Creates a link accessible object. For details, refer to - `a` and `area` element mappings. The value of the `href` attribute is stored in the `Value.Value` UIA property. - -
- Creates a link accessible object. For details, refer to - `a` and `area` element mappings. -
-
`AXURL: <value>`
`hreflang` - `a`; - - `link` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`http-equiv` - `meta` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`id` - HTML elements -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`inert` - HTML elements - Not MappedSee commentsSee commentsSee commentsSee comments -

- Nodes that are inert are not exposed to an accessibility API. -

-

- Note: an inert node can have descendants that are not inert. For example, a - modal dialog - can escape an inert subtree. -

-
`indeterminate [IDL]` - HTML elements; - `input` - `aria-checked` (state)="mixed"Use WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mappingIf the element has the `indeterminate [IDL]` set and the `aria-checked` attribute set, User Agents MUST expose only the`indeterminate [IDL]` state.
`ismap` - `img` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`itemid` - `img` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`itemprop` - `img` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`itemref` - `img` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`itemscope` - `img` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`itemtype` - `img` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`kind` - `track` - Not mappedNot mappedNot mappedNot mappedNot mapped
`label` - `optgroup`; - `option`; - `track` -
Not mapped
-
- Associates the accessible name -
-
- The target element of the `label` attribute has a `LabeledBy` property pointing to the element with the `label` attribute. Participates in name computation. - -
- Associates the accessible name -
-
`AXTitle`: `<value>` - See Also: Accessible Name and Description: Computation and API Mappings 1.1 -
`lang` - HTML elements -
Not mapped
-
- Exposed as "language" text attribute on the text container -
-
-
- The value of the `lang` attribute is exposed as a locale identifier by `Culture` property of the UIA element representing the HTML element, and by `Culture` attribute of the `TextRange` Control Pattern implemented on a parent accessible object. -
-
-
- Exposed as "language" text attribute on the text container -
-
`AXLanguage: <value>`
`list` - `input` - - `aria-controls` - -
- `IA2_RELATION_CONTROLLER_FOR` point to the `datalist` element referred to by the IDREF value of the `list` attribute. -
-
-
- `ControllerFor` point to the `datalist` element referred to by the IDREF value of the `list` attribute. -
-
-
- `ATK_RELATION_CONTROLLER_FOR` point to the `datalist` element referred to by the IDREF value of the `list` attribute. -
-
-
- Property: `AXLinkedUIElements`: point to the `datalist` element referred to by the IDREF value of the `list` attribute. -
-
- Refer to `datalist` - and `input` element mappings. -
`loop` - `audio`; - `video` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`low` - `meter` - Not mapped
Not mapped
`RangeValue.Minimum`
Not mapped
Not mapped
`max` - `input` - `aria-valuemax` -
- Exposed as `IAccessibleValue::maximumValue` if the element implements the interface -
-
`RangeValue.Maximum` -
- Exposed as `atk_value_get_maximum_value` if the element implements the `AtkValue` interface -
-
`AXMaxValue: <value>`
`max` - `meter`; - `progress` - `aria-valuemax` -
- Exposed as `IAccessibleValue::maximumValue` if the element implements the interface -
-
`RangeValue.Maximum` -
- Exposed as `atk_value_get_maximum_value` if the element implements the `AtkValue` interface -
-
`AXMaxValue: <value>`
`maxlength` - `input`; - `textarea` - Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`media` - `link`; - `meta`; - `source` (in `picture`); - `style` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`method` - `form` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`min` - `input` - `aria-valuemin` -
- Exposed as `IAccessibleValue::minimumValue` if the element - implements the interface -
-
`RangeValue.Minimum` -
- Exposed as `atk_value_get_minimum_value` if the element - implements the `AtkValue` interface -
-
`AXMinValue: <value>`
`min` - `meter` - `aria-valuemin` -
- Exposed as `IAccessibleValue::minimumValue` if the element implements the interface -
-
`RangeValue.Minimum` -
- Exposed as `atk_value_get_minimum_value` if the element implements the `AtkValue` interface -
-
`AXMinValue: <value>`
`minlength` - `input`; - `textarea` -
Not mapped
-
- States: - `IA2_STATE_INVALID_ENTRY` if value doesn't meet the designated minimum length value. -
-
-
- States: - `IsDataValidForForm` if value doesn't meet the designated minimum length value. -
-
-
- States: - `ATK_STATE_INVALID_ENTRY` if value doesn't meet the designated minimum length value. -
-
-
- Property: - `AXInvalid`: `true` if value doesn't meet the designated minimum length value. -
-
`multiple` - `input` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`multiple` - `select` - - `aria-multiselectable="true"` -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`muted` - `audio`; - `video` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`name` - `button`; - `fieldset`; - `input`; - `output`; - `select`; - `textarea`; - form-associated custom element -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`name` - `form` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`name` - `iframe`; - `object` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`name` - `map` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`name` - `meta` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`name` - `slot` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`nomodule` - `script` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`nonce` - HTML elements -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`novalidate` - `form` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`open` - `details` - `aria-expanded`="true | false"`STATE_SYSTEM_EXPANDED`
`STATE_SYSTEM_COLLAPSED`
- `ExpandCollapsePattern` - -
- States: - `ATK_STATE_COLLAPSED` or `ATK_STATE_EXPANDED` depending - on the attribute value -
-
`AXExpanded: YES|NO`Set properties on the `summary` element.
`open``dialog` -
- If the `open` attribute is set via the `showModal()` method then `aria-modal="true"` and `aria-hidden="false"`. -
-
- Otherwise, if the `open` attribute is set via the `show()` method, or explicitly specified by an author, then `aria-modal="false"` and `aria-hidden="false"`. -
-
Use WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mapping -

- The `open` attribute's value is irrelevant. When the `open` attribute is not specified the default user agent styling for a `dialog` is `display: none`. -

-

- Authors can reveal a `dialog` through the style layer by modifying its `display` property. If revealed this way then the `dialog` is `aria-modal="false"` and `aria-hidden="false"`. -

-
`optimum` - `meter` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`pattern` - `input` - -
- If the value doesn't match the pattern: `aria-invalid="true"`; - Otherwise, `aria-invalid="false"` -
-
Use WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mappingUse WAI-ARIA mapping
`ping` - `a` and `area` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`placeholder` - `input`; - `textarea` - `aria-placeholder`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
-
When the `placeholder` and `aria-placeholder` attributes are both present, and the `placeholder` attribute's value is non-empty, user agents MUST expose the value of the `placeholder` attribute, and ignore `aria-placeholder`. If the `placeholder` attribute's value is empty, then user agents MUST expose the value of the `aria-placeholder` attribute.
-
`playsinline` - `video` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`poster` - `video` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`preload` - `audio` and `video` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`readonly` - `input`; - `textarea`; - form-associated custom elements - `aria-readonly="true"`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
If the element includes both the `readonly` attribute and the `aria-readonly` attribute with a valid value, User Agents MUST expose only the `readonly` attribute value.
`referrerpolicy` - `a`; - `area`; - `iframe`; - `img`; - `link`; - `script` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`rel` - `a`; - `area`; - `link` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`required` - `input`; - `select`; - `textarea` - `aria-required`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
- If the element includes both the `required` attribute and the `aria-required` attribute with a valid value, User Agents MUST expose only the `required` attribute value. -
`reversed` - `ol` -
Not mapped
-
- Reverses the numerical or alphabetical order of the child list item markers. -
-
-
- Reverses the numerical or alphabetical order of the child list item markers. -
-
-
- Reverses the numerical or alphabetical order of the child list item markers. -
-
-
- Reverses the numerical or alphabetical order of the child list item markers. -
-
`rows` - `textarea` - Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`rowspan` - `td`; - `th` - `aria-rowspan`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`sandbox` - `iframe` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`scope` - `th` - -
- If `scope="row"` then map `th` to `rowheader` -
-
- If `scope="col"` then map `th` to `columnheader` -
-
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`selected` - `option` - `aria-selected="true"`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
If the element includes both the `selected` attribute and the `aria-selected` attribute with a valid value, User Agents MUST expose only the `selected` attribute value.
`shape` - `area` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`size` - `input`; - `select` - -
- Not mapped for `input` elements. -
-
- If greater than 1, then creates a listbox accessible object. Refer to `select` element for details. -
-
-
Not mapped for `input` elements.
-
For `select` element use WAI-ARIA mapping.
-
-
Not mapped for `input` elements.
-
For `select` element use WAI-ARIA mapping.
-
-
Not mapped for `input` elements.
-
For `select` element use WAI-ARIA mapping.
-
-
Not mapped for `input` elements.
-
For `select` element use WAI-ARIA mapping.
-
- For `input` elements that allow the `size` attribute, the attribute will modify their default width. A width provided by CSS will negate the effects of the `size` attribute on these `input` elements. -
`sizes` - `link` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`sizes` - `img`; - `source` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`slot` - HTML elements -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`span` - `col`; - `colgroup` - Not mapped -
- Exposed as `IAccessibleTableCell::columnExtent` on all cells at the column -
-
-
- Exposed as `GridItem.ColumnSpan` on all cells at the column -
-
-
- Exposed via `atk_table_get_column_extent_at` -
-
-
- `AXColumnIndexRange.length: <value>` -
-
`spellcheck` - HTML elements - `aria-invalid="spelling"` or `grammar`
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`src` - `audio`; - `embed`; - `iframe`; - `img`; - `input`; - `script`; - `source` (in `audio` or `video`); - `track`; - `video` -
Not mapped
-
- Object attributes: - `src` on `img` only -
-
-
Not mapped
-
-
- Object attributes: - `src` on `img` only -
-
- `AXURL: <value>` on `img` and `input type="image"` -
`srcdoc` - `iframe` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`srclang` - `track` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`srcset` - `img`; - `source` -
Not mapped
Not mapped
Not mapped
Not mapped
Not Mapped
`start` - `ol` -
Not mapped
-
- Changes the first number of the child list item accessible objects to match the `start` attribute's value. -
-
-
- Changes the first number of the child list item accessible objects to match the `start` attribute's value. -
-
-
- Changes the first number of the child list item accessible objects to match the `start` attribute's value. -
-
-
- Changes the first number of the child list item accessible objects to match the `start` attribute's value. -
-
`step` - `input` -
Not mapped
Not mapped
- If the `input` is in the `Range` state, set both `RangeValue.SmallChange` and `RangeValue.LargeChange` to the value of `step`. - -
- Exposed as `atk_value_get_minimum_increment` if the element implements the `AtkValue` interface. -
-
Not mapped
`style` - HTML elements -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`tabindex` - HTML elements - - See Focus States and Events Table -
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
Use WAI-ARIA mapping
`target` - `a`; - `area` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`target` - `base` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`target` - `form` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`title` - HTML elements - -
- Either the accessible name, or the - accessible description, or Not mapped (see Comments). -
-
-
Use WAI-ARIA mapping
-
-
Use WAI-ARIA mapping
-
-
Use WAI-ARIA mapping
-
-
Use WAI-ARIA mapping
-
-
- The Accessible Name and Description Computation section specifies if the `title` attribute will be mapped and, if so, through what [[WAI-ARIA]] property. -
- - -
`title` - `abbr`; - `dfn` -
Not mapped
-
- Associates the accessible name -
-
-
- Associates the accessible name -
-
-
- Associates the accessible name -
-
`AXExpandedTextValue: <value>`
`title` - `link`; `style` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
- Provides the name for the CSS style sheet. -
`translate` - HTML elements -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`type` - `button` - Not mapped -
- `submit` type may be a default button in the form. -
-
-
- `submit` type may be a default button in the form. -
-
-
- `submit` type may be a default button in the form. -
-
-
- `submit` type may be a default button in the form. -
-
`type` - `embed`; - `object`; - `script`; - `source` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`type` - `input` - Refer to WAI-ARIA mappings for input types with defined ARIA roles. -
- Defines the accessible role, states and other properties, refer to - type="`text`", - type="`password`", - type="`button`", etc -
-
-
- Defines the accessible role, states and other properties, refer to - type="`text`", - type="`password`", - type="`button`", etc -
-
-
- Defines the accessible role, states and other properties, refer to - type="`text`", - type="`password`", - type="`button`", etc -
-
-
- Defines the accessible role, states and other properties, refer to - type="`text`", - type="`password`", - type="`button`", etc -
-
`type` - `ol` - Not mapped -
- Defines the list item marker, which has no accessible object, but is exposed as content in the accessible text of the associated list item. -
-
- Interfaces: `IAccessibleText2` -
-
-
- Defines the list item marker, which has no accessible object, but is exposed as content in the accessible text of the associated list item. -
-
Control Pattern: `Text`
-
-
- Defines the list item marker, which has no accessible object, but is exposed as content in the accessible text of the associated list item. -
-
- Interfaces: `ATKText` -
-
-
Defines the list item marker, which is exposed as content in `AXValue`, and rendered as an accessible object:
-
- AXRole: `AXListMarker` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `"list marker"` -
-
-
Some platforms (IAccessible2, ATK, UIA) do not expose an accessible object for the list item marker, whether it was created and then pruned from the accessibility tree, or never created in the first place. Instead, they expose the list item marker as part of the associated list item's accessible text. In these cases, implementors need to consider such things as adjusting the offsets (e.g., for caret-moved events, text-selection events, etc.) for the updated list item text that now also contains the list item marker as content, rather than just taking the offsets unmodified from the list item renderer.
-
`usemap` - `img` -
Not mapped
-
- Responsible for image map creation. -
-
-
- Responsible for image map creation. -
-
-
- Responsible for image map creation. -
-
-
- Responsible for image map creation. -
-
Refer to `img` element.
`value` - `button`; - `option` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`value` - `data` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
`value` - `input` - Not mapped -
- Associates the accessible value for entry type input elements - and accessible name for button type input elements -
-
-
- Associates the accessible value for entry type input elements - and accessible name for button type input elements -
-
-
- Associates the accessible value for entry type input elements - and accessible name for button type input elements -
-
`AXValue: <value>`
`value` - `li` -
Not mapped
-
- Exposed as first text node of `li`'s accessible object. -
-
-
- Expose the value of the `value` attribute as the first text node in the list item. - If the value of the `value` attribute is an integer, set the UIA `PositionInSet` property to the integer value. -
-
-
- Exposed as first text node of `li`'s accessible object. -
-
-
Exposed as `AXValue: <value>` with accessible object:
-
- AXRole: `AXListMarker` -
-
- AXSubrole: `(nil)` -
-
- AXRoleDescription: `list marker` -
-
`value` - `meter`; - `progress` - `aria-valuenow` -
- Exposed as `IAccessibleValue::currentValue` -
-
-
- Exposed as `Value.Value` -
-
-
- Exposed as `atk_value_get_current_value` -
-
-
- `AXValue: <value>` -
-
`width` - `canvas`; - `embed`; - `iframe`; - `img`; - `input`; - `object`; - `source` (in `picture`); - `video` -
Not mapped
-
- Defines an accessible object's width (`IAccessible::accLocation`) -
-
-
- Defines an accessible object's width (`BoundingRectangle`) -
-
-
- Defines an accessible object's width (`atk_component_get_size`) -
-
`AXSize: w=n`
`wrap` - `textarea` -
Not mapped
Not mapped
Not mapped
Not mapped
Not mapped
-
+ This specification defines how HTML user agents respond to and expose [=role=], [=state=] and [=ARIA/property=] information provided for Web content. Unless indicated otherwise, an HTML element or attribute with default [[[WAI-ARIA]]] semantics must be exposed to the platform accessibility APIs according to the relevant WAI-ARIA mappings defined in the [[[core-aam-1.2]]] ([[core-aam-1.2]]) specification. +

+

+ In some cases, often due to features of the HTML host language or the accessibility API in question, an element or attribute's mapping differs from the corresponding ARIA mappings specified in the [[core-aam-1.2]]. Where an HTML element or attribute does not have any default WAI-ARIA semantics, the applicable mapping for each platform accessibility API is defined by this specification. +

+

+ This document also adapts the [[[accname-1.2]]] specification for deriving the accessible names and accessible descriptions of [[HTML]] elements, and provides accessible implementation examples for specific HTML elements and features. +

+

+ Users often access HTML content using assistive technologies that rely on platform accessibility API to obtain and interact with information from the page. This document is part of the following suite of accessibility API mapping specifications for content rendered by user agents: +

+
    +
  • [[[accname-1.2]]]
  • +
  • [[[core-aam-1.2]]]
  • +
  • HTML Accessibility API Mappings 1.0 (this specification)
  • +
  • [[[svg-aam-1.0]]]
  • + +
  • MathML AAM 1.0
  • +
+
+

Accessibility APIs

+

+ Accessibility APIs covered by this document are: +

+ +

+ If user agent developers need to expose information using other accessibility APIs, it is recommended that they work closely with the developer of the platform where the API runs, and assistive technology developers on that platform. +

+

+ For more information regarding accessibility APIs, refer to section 1.1 Accessibility APIs of the [[[core-aam-1.2]]]. +

+
+
+
+

+ The classification of a section as normative or non-normative applies to the entire section and all sub-sections of that section. +

+

+ Normative sections provide requirements that authors, user agents, and assistive technologies MUST follow for an implementation to conform to this specification. +

+

+ Non-normative sections provide information useful to understanding the specification. Such sections may contain examples of recommended practice, but it is not required to follow such recommendations in order to conform to this specification. +

+
+

Deprecated

+

+ There are currently no deprecated requirements. +

+
+
+
+

Mapping HTML to Accessibility APIs

+
+

General Rules for Exposing WAI-ARIA Semantics

+

+ WAI-ARIA support was first introduced to HTML in [[HTML5]]. +

+

+ Where an HTML element or attribute has default WAI-ARIA semantics, it MUST be exposed to the platform accessibility APIs in a way that conforms to General rules for exposing WAI-ARIA semantics in the [[[core-aam-1.2]]]. +

+
+
+

Conflicts Between Native Markup Semantics and WAI-ARIA

+

+ Where the host language is [[HTML]], user agents MUST conform to + Conflicts between native markup semantics and WAI-ARIA in the [[[core-aam-1.2]]]. +

+
+
+

Exposing HTML Features That Do Not Directly Map to Accessibility APIs

+

+ HTML can include features that are not supported by accessibility APIs at the time of publication. There is not a one to one relationship between all features and platform accessibility APIs. When HTML roles, states and properties do not directly map to an accessibility API, and there is a method in the API to expose a text string, user agents MUST expose the undefined role, states and properties via that method. +

+

+ For HTML elements or attributes with default WAI-ARIA semantics, user agents MUST conform to + Exposing attributes that do not directly map to accessibility + API properties in the [[core-aam-1.2]]. +

+
+
+

HTML Element Role Mappings

+
    +
  • HTML elements with implicit WAI-ARIA role semantics MUST be mapped to platform accessibility APIs according to the identified WAI-ARIA role mapping as defined in the [[core-aam-1.2]] specification.
  • +
  • "Not mapped" means the element does not need to be exposed via an accessibility API. This is usually because the element is not displayed as part of the user interface. However, authors can force some of these elements to be rendered. For instance, by overriding user agent styles to render elements that would have been otherwise set to `display: none`. In these cases, the user agent SHOULD map such elements to the role of `generic`.
  • +
  • Where applicable, how an element participates in the computation of its own or another element's accessible name and/or accessible description is described in the Accessible Name and Description Computation section of this document.
  • +
  • Where an element is indicated as having "No corresponding (WAI-ARIA) role", or is mapped to the `generic` role, user agents MUST NOT expose the `aria-roledescription` property value in the accessibility tree unless the element has an explicit, conforming `role` attribute value which [[WAI-ARIA-1.2]] does not prohibit the use of `aria-roledescription`.
  • +
  • + IAccessible2: +
      +
    • All elements with accessible objects should implement the IAccessible, IAccessible2 and IAccessible2_2 interfaces.
    • +
    +
  • +
  • + UIA: +
      +
    • When a labelable element is referenced by a `label` element's `for` attribute, or a descendant of a `label` element, the labelable element's UIA `LabeledBy` property points to the UIA element for the `label` element.
    • +
    • Elements mapped to the `Text` Control Type are not generally represented as accessible objects in the accessibility tree, but are just part of the `Text` Control Pattern implemented for the whole HTML document. However, if they have any `aria-` attributes or an explicit `tabindex` specified, elements mapped to the `Text` Control Type will be represented as accessible objects in the accessibility tree.
    • +
    +
  • +
  • + AXAPI: +
      +
    • User agents should return a user-presentable, localized string value for the Mac Accessibility AXRoleDescription.
    • +
    +
  • +
+

`a`(represents a hyperlink)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `a` + (represents a hyperlink) +
[[wai-aria-1.2]] + `link` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`a`(no `href` attribute)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `a` + (no `href` attribute) +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`abbr`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `abbr` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Roles: `ROLE_SYSTEM_TEXT`; `IA2_ROLE_TEXT_FRAME` +
+
+ Object attributes: + "abbr" attribute on the containing `td` if a single child, text content used as a value +
+
UIA +
+ Control Type: `Text` +
+
ATK +
+ Role: `ATK_ROLE_STATIC` +
+
+ Object attributes: + "abbr" attribute on the containing `td` if a single child, text content used as a value +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`address`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `address` +
[[wai-aria-1.2]] + `group` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`area`(represents a hyperlink)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `area` + (represents a hyperlink) +
[[wai-aria-1.2]] + `link` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`area`(no `href` attribute)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `area` + (no `href` attribute) +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`article`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `article` +
[[wai-aria-1.2]] + `article` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`aside` (scoped to the `body` or `main` element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `aside` (scoped to the `body` or `main` element) +
[[wai-aria-1.2]] + `complementary` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`aside`(scoped to a sectioning content element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `aside` + (scoped to a sectioning content element) +
[[wai-aria-1.2]] + `complementary` role if the `aside` element has an accessible name. + Otherwise, `generic` role. +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments
+

`audio`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `audio` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `ROLE_SYSTEM_GROUPING` +
+
UIA +
+ Control Type: `Group` +
+
+ Localized Control Type: `"audio"` +
+
+ Note: If the `controls` attribute is present, UI controls (e.g., play, volume) are exposed as children of the `audio` element in the accessibility tree, and mapped as appropriate for the type of control (e.g., `button` or `slider`). +
+
+ Text objects associated with loading or error messages, and any UI control not currently displayed, MAY be present in the accessibility tree and marked as hidden or off-screen. +
+
ATK +
+ Role: `ATK_ROLE_AUDIO` +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `AXAudio` +
+
+ AXRoleDescription: `"audio playback"` +
+
+ Note: If the `controls` attribute is present, UI controls (e.g., play, volume) are exposed as descendants of an accessible object with a role of `toolbar`, and mapped as appropriate for the type of control (e.g., `button` or `slider`). +
+
Comments +
+

autonomous custom element

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + autonomous custom element +
[[wai-aria-1.2]] + If the author assigned a conforming ARIA role using the `role` attribute, map to that role. Otherwise, the `generic` role. +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`b`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `b` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + Exposed by platform specific bold font weight text styles. +
+

`base`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `base` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`bdi`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `bdi` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + IA2/ATK: May affect on "writing-mode" text attribute on its text container. +
+

`bdo`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `bdo` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + IA2/ATK: Exposed as "writing-mode" text attribute on its text container. +
+

`blockquote`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `blockquote` +
[[wai-aria-1.2]] + `blockquote` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`body`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `body` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`br`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `br` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments + May be exposed as '\n' character by the platform interface. +
+

`button`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `button` +
[[wai-aria-1.2]] + `button` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + A `button`'s mapping will change if the + `aria-pressed` or + `aria-haspopup` attributes are specified. +
+

`canvas`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `canvas` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Roles: `ROLE_SYSTEM_GRAPHIC`; `IA2_ROLE_CANVAS` +
+
UIA +
+ Control Type: `Image` +
+
+ Descendants of the `canvas` element are mapped separately. +
+
ATK +
+ Role: `ATK_ROLE_CANVAS` +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `""` +
+
Comments +
+

`caption`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `caption` +
[[wai-aria-1.2]] + `caption` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
+ Relations: + `IA2_RELATION_LABEL_FOR` with parent `table` +
+
UIA +
Use WAI-ARIA mapping
+
+ Other properties: The `LabeledBy` property for the parent `table` element points to the + UIA element for the `caption` element. +
+
ATK +
Use WAI-ARIA mapping
+
+ Relations: + `ATK_RELATION_LABEL_FOR` with parent `table` +
+
AX +
Use WAI-ARIA mapping
+
+ Relations: + `ATK_RELATION_LABEL_FOR` with parent `table` +
+
Comments + If a descendant of a `table`, the first instance of a `caption` element will provide the `table` its accessible name. +
+

`cite`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `cite` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ No accessible object. Styles used are mapped into text attributes on its text container. +
+
UIA +
+ No accessible object. Styles used are exposed by UIA text attributes of the `TextRange` Control Pattern implemented on a parent accessible object. +
+
ATK +
+ No accessible object. Styles used are mapped into text attributes on its text container. +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`code`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `code` +
[[wai-aria-1.2]] + `code` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`col`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `col` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`colgroup`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `colgroup` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `ROLE_SYSTEM_GROUPING` +
+
UIA +
+
+ Control Type: `Group` +
+
+ Localized Control Type: `"colgroup"` +
+
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`data`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `data` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`datalist`(represents pre-defined options for `input` element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `datalist` + (represents pre-defined options for `input` element) +
[[wai-aria-1.2]] + `listbox` role, with the `aria-multiselectable` property set to "true" if the `datalist`'s selection model allows multiple `option` elements to be selected at a time, and "false" otherwise +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + If `datalist` is not linked to a proper `input` element, then `datalist` element is not mapped to accessibility APIs. +
+

`dd`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `dd` +
[[wai-aria-1.2]] + `definition` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`del`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `del` +
[[wai-aria-1.2]] + `deletion` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`details`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `details` +
[[wai-aria-1.2]] + `group` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
+ Localized Control Type: `"details"` +
+
ATK +
Use WAI-ARIA mapping
+
+ Relations: `"ATK_RELATION_DETAILS_FOR"` +
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`dfn`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `dfn` +
[[wai-aria-1.2]] + `term` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`dialog`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `dialog` +
[[wai-aria-1.2]] + `dialog` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + See also the `dialog` element's `open` attribute. +
+

`div`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `div` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`dl`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `dl` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `ROLE_SYSTEM_LIST` +
+
+ States: `STATE_SYSTEM_READONLY` +
+
UIA +
+ Control Type: `List` +
+
ATK +
+ Role: `ATK_ROLE_DESCRIPTION_LIST` +
+
AX +
+ AXRole: `AXList` +
+
+ AXSubrole: `AXDefinitionList` +
+
+ AXRoleDescription: `"definition list"` +
+
Comments +
+

`dt`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `dt` +
[[wai-aria-1.2]] + `term` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`em`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `em` +
[[wai-aria-1.2]] + `emphasis` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`embed`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `embed` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Roles: `ROLE_SYSTEM_CLIENT`; `IA2_ROLE_EMBEDDED_OBJECT` +
+
+ States: `STATE_SYSTEM_UNAVAILABLE` for windowless plugin +
+
UIA +
+ Control Type: `Pane` +
+
ATK +
+ Role: `ATK_ROLE_EMBEDDED` +
+
AX + Depends on format of data file +
Comments +
+

`fieldset`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `fieldset` +
[[wai-aria-1.2]] + `group` role +
MSAA + IAccessible2 +
+ Role: Use WAI-ARIA mapping +
+
+ Relations: `IA2_RELATION_LABELLED_BY` with child `legend` element +
+
UIA +
+ Role: Use WAI-ARIA mapping +
+
ATK +
+ Role: Use WAI-ARIA mapping +
+
+ Relations: `ATK_RELATION_LABELLED_BY` with child `legend` element +
+
AX +
+ Role: Use WAI-ARIA mapping +
+
+ AXSubrole: `AXFieldset` +
+
+
+ AXDescription: value from child `legend` subtree +
+
+
Comments +
+

`figcaption`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `figcaption` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Roles: `ROLE_SYSTEM_TEXT`; `IA2_ROLE_CAPTION` +
+
+ Relations: `IA2_RELATION_LABEL_FOR` with parent `figure` element +
+
UIA +
+ Control Type: `Text` +
+
ATK +
+ Role: `ATK_ROLE_CAPTION` +
+
+ Relations: + `ATK_RELATION_LABEL_FOR` with parent `figure` element +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`figure`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `figure` +
[[wai-aria-1.2]] + `figure` role +
MSAA + IAccessible2 +
+ Role: Use WAI-ARIA mapping +
+
+ Relations: `IA2_RELATION_LABELLED_BY` with child `figcaption` element +
+
UIA +
+ Role: Use WAI-ARIA mapping +
+
+ Accessible name derived from `figcaption` according to the `figure` Element Accessible Name Computation +
+
ATK +
+ Role: Use WAI-ARIA mapping +
+
+ Name: related `figcaption` content +
+
+ Relations: `ATK_RELATION_LABELLED_BY` with child `figcaption` element +
+
AX +
+ AXRole: Use WAI-ARIA mapping +
+
Comments +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `footer` (scoped to the `body` element) +
[[wai-aria-1.2]] + `contentinfo` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `footer` (scoped to the `main` element, + a sectioning content element) +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
+ Control Type: `Group` +
+
+ Localized Control Type: `"footer"` +
+
ATK +
+ Role: `ATK_ROLE_FOOTER` +
+
AX +
Use WAI-ARIA mapping
+
Comments + If a `footer` is not scoped to the `body` element, + do not expose the element as a `contentinfo` landmark. +
+

`form`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `form` +
[[wai-aria-1.2]] + `form` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
If a `form` has no accessible name:
+
+ Role: `ATK_ROLE_FORM` +
+
AX +
Use WAI-ARIA mapping
+
Comments + If a `form` has no accessible name, + do not expose the element as a landmark. +
+

form-associated custom element

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + form-associated custom element +
[[wai-aria-1.2]] + If the author assigned a conforming ARIA role using the `role` attribute, map to that role. Otherwise, the `generic` role. +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`h1`, `h2`, `h3`, `h4`, `h5`, and `h6`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `h1`, `h2`, `h3`, `h4`, `h5`, and `h6` +
[[wai-aria-1.2]] + `heading` role, with the `aria-level` property set to the number in the element's tag name. +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`head`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `head` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`header` (scoped to the `body` element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `header` (scoped to the `body` element) +
[[wai-aria-1.2]] + `banner` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`header` (scoped to the `main` element, or a sectioning content element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `header` (scoped to the `main` element, or a sectioning content element) +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
+ Control Type: `Group` +
+
+ Localized Control Type: `"header"` +
+
ATK +
+ Role: `ATK_ROLE_HEADER` +
+
AX +
Use WAI-ARIA mapping
+
Comments + If a `header` is not scoped to the `body` element, + do not expose the element as a `banner` landmark. +
+

`hgroup`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `hgroup` +
[[wai-aria-1.2]] + `group` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + If an `hgroup` contains multiple heading elements, then the heading element with the highest priority level + MAY be treated as the sole heading of the `hgroup`. All other heading elements MAY instead be exposed as if they + were `p` elements. See `paragraph` role on Core AAM. +
+

`hr`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `hr` +
[[wai-aria-1.2]] + `separator` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`html`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `html` +
[[wai-aria-1.2]] + `document` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`i`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `i` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + Exposed by platform specific italic text styles. +
+

`iframe`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `iframe` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `IA2_ROLE_INTERNAL_FRAME` +
+
UIA +
+ Control Type: `Pane` +
+
ATK +
+ Role: `ATK_ROLE_INTERNAL_FRAME` +
+
AX +
+ AXRole: `AXWebArea` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"html content"` +
+
Comments +
+

`img`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `img` +
[[wai-aria-1.2]] + `img` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`img`(`alt`attribute value is an empty string, i.e. `alt=""` or `alt` with no value in the markup)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `img` + (`alt` + attribute value is an empty string, i.e. `alt=""` or `alt` with no value in the markup) +
[[wai-aria-1.2]] + +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input` (`type` attribute in the Button state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` (`type` attribute in the + Button state) +
[[wai-aria-1.2]] + `button` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input`(`type` attribute in the Checkbox state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Checkbox state) +
[[wai-aria-1.2]] + `checkbox` role, with the + `aria-checked` state set to "mixed" if the element's + `indeterminate` IDL attribute is true, or "true" if the element's + checkedness is true, or "false" otherwise +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input` (`type` attribute in theColor state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` (`type` attribute in the + Color state) +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
If implemented as a textbox:
+
Roles: `ROLE_SYSTEM_TEXT`
+
If implemented as a color picker:
+
Roles: `IA2_ROLE_COLOR_CHOOSER`
+
UIA +
If implemented as a textbox:
+
Control Type: `Edit`
+
Localized Control Type: "edit"
+
If implemented as a color picker:
+
Control Type: `button`
+
Localized Control Type: "color picker"
+
ATK +
+ If implemented as a button, use WAI-ARIA mapping for `button`. +
+
+ If implemented as a textbox, use WAI-ARIA mapping for `textbox`. +
+
AX +
If implemented as a textbox:
+
AXRole: `AXTextField`
+
AXSubrole: `(nil)`
+
AXRoleDescription: `"text field"`
+
If implemented as a color picker:
+
AXRole: `AXColorWell`
+
AXSubrole: `(nil)`
+
AXRoleDescription: `"color well"`
+
Comments +
+ If implemented as a color picker, any UI controls presented for selecting a color are exposed in the accessibility tree, associated with the `input` element, and mapped as appropriate for the type of control (e.g. button or slider). +
+
+

`input` (`type` attribute in theDate state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` (`type` attribute in the + Date state) +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
If implemented as a textbox:
+
+ Role: `ROLE_SYSTEM_TEXT` +
+
+ Object attributes: `text-input-type:date` +
+
If implemented as a date picker:
+
+ Role: `IA2_ROLE_DATE_EDITOR` +
+
UIA +
+ Depends on UI design of implementation. The UI in Windows 10 Edge, for example, is a composite of multiple spinners. +
+
ATK +
+ Role: `ATK_ROLE_CALENDAR` +
+
AX +
+ AXRole: `AXDateField` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"date field"` +
+
Comments +
+

`input`(`type` attribute in theLocal Date and Time state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Local Date and Time state) +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `IA2_ROLE_DATE_EDITOR` +
+
UIA +
+ Depends on UI design of implementation. The UI in Windows 10 Edge, for Example, is a composite of multiple spinners. +
+
ATK +
+ Role: `ATK_ROLE_CALENDAR` +
+
AX +
+ AXRole: `AXTextField` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"text field"` +
+
Comments +
+

`input` (`type` attribute in the E-mail state with no suggestions source element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` (`type` attribute in the + E-mail state with no suggestions source element) +
[[wai-aria-1.2]] + `textbox` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
Object attributes: `text-input-type:email`
+
UIA +
Use WAI-ARIA mapping
+
+ Localized Control Type: `"email"` +
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input` (`type` attribute in the File Upload state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` (`type` attribute in the + File Upload state) +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Implementation dependent. If represented by a container with a button a text label inside then: +
+
+ Roles: `IA2_ROLE_TEXT_FRAME` +
+
+ Children: `ROLE_SYSTEM_PUSHBUTTON` and `IA2_ROLE_LABEL` for a button and a text label elements. +
+
UIA +
+ Can be rendered as a single button control, or as a button control with a text input field. +
+
Button control:
+
+ Control Type: `Button` +
+
Text input field:
+
+ Control Type: `Edit` +
+
+ Localized Control Type: `"file"` +
+
ATK +
+ Role: `ATK_ROLE_STATIC` +
+
+ Children: + `ATK_ROLE_PUSH_BUTTON` when pressed `ATK_ROLE_FILE_CHOOSER` dialog shown +
+
AX +
+ AXRole: `AXButton` +
+
+ AXSubrole: `AXFileUploadButton` +
+
+ AXRoleDescription: `file upload button` +
+
Comments +
+

`input`(`type` attribute in the Hidden state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Hidden state) +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`input`(`type` attribute in the Image Button state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Image Button state) +
[[wai-aria-1.2]] + `button` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input`(`type` attribute in the Month state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Month state) +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `IA2_ROLE_DATE_EDITOR` +
+
UIA +
+ Depends on UI design of implementation. The UI in Windows 10 Edge, for Example, is a composite of multiple spinners. +
+
ATK +
+ Role: `ATK_ROLE_DATE_EDITOR` +
+
AX +
+ AXRole: `AXTextField` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"text field"` +
+
Comments +
+

`input`(`type` attribute in the Number state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Number state) +
[[wai-aria-1.2]] + `spinbutton` role +
MSAA + IAccessible2 +
+ If implemented as a spin button, use WAI-ARIA mapping for + `spinbutton`. +
+
+ If implemented as a text input, use WAI-ARIA mapping for + `textbox`. +
+
+ Object attributes: `text-input-type:number` +
+
UIA +
If implemented as a spin button, use WAI-ARIA mapping for `spinbutton`.
+
If implemented as a text input:
+
+ Control Type: `Edit` +
+
+ Localized Control Type: `"number"` +
+
ATK +
+ If implemented as a spin button, use WAI-ARIA mapping for `spinbutton`. +
+
+ If implemented as a text input, use WAI-ARIA mapping for `textbox`. +
+
+ Object attributes: `text-input-type:number` +
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input`(`type` attribute in the Password state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Password state) +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Role: `ROLE_SYSTEM_TEXT`
+
+ States: `STATE_SYSTEM_PROTECTED`; `IA2_STATE_SINGLE_LINE`; `STATE_SYSTEM_READONLY` if readonly, otherwise `IA2_STATE_EDITABLE` +
+
UIA +
+ Control Type: `Edit` +
+
+ Localized Control Type: `"password"` +
+
+ Other properties: Set `isPassword` to `true` +
+
ATK +
Role: `ATK_ROLE_PASSWORD_TEXT`
+
+ States: `ATK_STATE_SINGLE_LINE`; `ATK_STATE_READ_ONLY` if readonly, otherwise `ATK_STATE_EDITABLE` +
+
AX +
+ AXRole: `AXTextField` +
+
+ AXSubrole: `AXSecureTextField` +
+
+ AXRoleDescription: `"secure text field"` +
+
Comments +
+

`input`(`type` attribute in the Radio Button state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Radio Button state) +
[[wai-aria-1.2]] + `radio` role, with the + `aria-checked` state set to "true" if the element's + checkedness is true, or "false" otherwise. + With `aria-setsize` value reflecting number of `type=radio input` elements within the + radio button group + and `aria-posinset` value reflecting the elements position within the radio button group. +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input`(`type` attribute in the Range state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Range state) +
[[wai-aria-1.2]] + `slider` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input`(`type` attribute in the Reset Button state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Reset Button state) +
[[wai-aria-1.2]] + `button` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Search state with no suggestions source element) +
[[wai-aria-1.2]] + `searchbox` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input` (`type` attribute in the Submit Button state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + + (`type` attribute in the + Submit Button state) + +
[[wai-aria-1.2]] + `button` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input` (`type` attribute in the Telephone state with no suggestions source element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + + (`type` attribute in the + Telephone state with no + suggestions source element) + +
[[wai-aria-1.2]] + `textbox` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
+ Object attributes: `text-input-type:telephone` +
+
UIA +
Use WAI-ARIA mapping
+
+ Localized Control Type: `"telephone"` +
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input` (`type` attribute in the Text state with no suggestions source element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + + (`type` attribute in the + Text state with no + suggestions source element) + +
[[wai-aria-1.2]] + `textbox` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input` (`type` attribute in the Text, Search, Telephone, URL, or E-mail states with a suggestions source element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + + (`type` attribute in the + Text, + Search, + Telephone, + URL, or + E-mail states with a + suggestions source element) + +
[[wai-aria-1.2]] + `combobox` role, with the + `aria-controls` property set to the same value as the + `list` attribute +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
+ Object attributes: `text-input-type:as per input type` +
+
UIA +
Use WAI-ARIA mapping
+
+ Other properties: `ControllerFor` points to the suggestions source element +
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input`(`type` attribute in the Time state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + Time state) +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `ROLE_SYSTEM_SPINBUTTON` if implemented as a simple widget; `ROLE_SYSTEM_GROUPING` with child controls mapped as appropriate if implemented as a complex widget +
+
+ Object attributes: `text-input-type:time` +
+
UIA +
+ Depends on UI design of implementation. The UI in Windows 10 Edge, for Example, is a composite of multiple spinners. +
+
ATK +
+

+ Role: `ATK_ROLE_SPINBUTTON` + if implemented as a simple widget.
+ If implemented as a complex widget use:
+ Role: `ROLE_PANEL` and map child controls as appropriate. +

+
+
AX +
+ AXRole: `AXTimeField` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"time field"` +
+
Comments +
+

`input`(`type` attribute in the URL state with no suggestions source element)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + (`type` attribute in the + URL state with no suggestions source element) +
[[wai-aria-1.2]] + `textbox` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
+ Object attributes: `text-input-type:url` +
+
UIA +
Use WAI-ARIA mapping
+
Localized Control Type: `"url"`
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`input` (`type` attribute in the Week state)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `input` + + (`type` attribute in the + Week state) + +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `IA2_ROLE_DATE_EDITOR` +
+
+ Object attributes: `text-input-type:week` +
+
UIA +
+ Depends on UI design of implementation. The UI in Windows 10 Edge, for Example, is a composite of multiple spinners. +
+
ATK +
+ Role: `ATK_ROLE_CALENDAR` +
+
AX +
+ AXRole: `AXTextField` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"text field"` +
+
Comments +
+

`ins`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `ins` +
[[wai-aria-1.2]] + `insertion` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`kbd`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `kbd` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
No accessible object.
+
+ Text attributes: `font-family:monospace` on the text container +
+
UIA +
+ No accessible object. Styles used are exposed by UIA text attribute identifiers of the `TextRange` Control Pattern implemented on a parent accessible object. +
+
ATK +
+ No accessible object. Mapped into "font-family:monospace" text attribute on its text container. +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`label`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `label` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Roles: `ROLE_SYSTEM_STATICTEXT`; `IA2_ROLE_LABEL` +
+
+ Relations: + `IA2_RELATION_LABEL_FOR` with a labelable element + that is child to the `label` or referred to by the `label` element's `for` attribute. + The associated labelable element has `IA2_RELATION_LABELLED_BY` pointing to the `label`. +
+
UIA +
+ Control Type: `Text` +
+
+ Relations: +
+ When the `label` element contains a labelable element, the `LabeledBy` property for + the element points to the UIA element for the `label` element. +
+
+ When the `label` element has a `for` attribute referencing a + labelable element, the `LabeledBy` property for the referenced element points to + the UIA element for the `label` element. +
+
+
ATK +
+ Role: `ATK_ROLE_LABEL` +
+
+ Relations: + `ATK_RELATION_LABEL_FOR` for a child labelable element or + labelable element referred by `for` attribute. + Note, related labelable element provides `ATK_RELATION_LABELLED_BY` pointing to the `label`. +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`legend`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `legend` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Roles: `ROLE_SYSTEM_STATICTEXT`; `IA2_ROLE_LABEL` +
+
+ Relations: `IA2_RELATION_LABEL_FOR` with the parent `fieldset` +
+
UIA +
+ Control Type: `Text` +
+
+ Other properties: + The `LabeledBy` property for the parent + `fieldset` points to the UIA element for the `legend` element. +
+
ATK +
+ Role: `ATK_ROLE_LABEL` +
+
+ Relations: + `ATK_RELATION_LABEL_FOR` with parent `fieldset` element +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`li`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `li` +
[[wai-aria-1.2]] + `listitem` role with + `aria-setsize` value reflecting number of + `li` elements within the parent `ol`, `menu` or `ul` + and `aria-posinset` + value reflecting the `li` elements position within the set. +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + If `li` element is not a child of `ol` , `menu` or `ul`, or if the containing + list element is no longer exposed with a `list` role, then expose the `li` element with a `generic` role. +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `link` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`main`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `main` +
[[wai-aria-1.2]] + `main` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`map`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `map` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Not mapped if used as an image map. Otherwise, +
+
+ Role: `IA2_ROLE_TEXT_FRAME` +
+
UIA +
Not mapped
+
ATK +
+ Not mapped if used as an image map, otherwise: +
+
+ Role: `ATK_ROLE_STATIC` +
+
AX +
+ Role: `AXImageMap` if used as an image map. Otherwise,
+ Role: `AXGroup` if associated with an `img` with no `alt`. Otherwise,
+ not mapped if not associated with an `img`. +
+
Comments +
+

`mark`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `mark` +
[[wai-aria-1.2]] + `mark` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`math`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `math` +
[[wai-aria-1.2]] + See comments +
MSAA + IAccessible2 + See comments +
UIA + See comments +
ATK + See comments +
AX + See comments +
Comments + Mapping for `math` is defined by MathML AAM 1.0. +
+

`menu`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `menu` +
[[wai-aria-1.2]] + `list` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+ The `menu` element is a semantic alternative to the `ul` element. + It has no implemented mappings or behavior that reflect the semantics of the ARIA + `menu` role. +
+ +
+

`meta`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `meta` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`meter`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `meter` +
[[wai-aria-1.2]] + `meter` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`nav`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `nav` +
[[wai-aria-1.2]] + `navigation` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`noscript`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `noscript` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`object`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `object` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Depends on format of data file. If it contains a plugin then,
+
+ Role: `IA2_ROLE_EMBEDDED_OBJECT` +
+
+ States: + `STATE_SYSTEM_UNAVAILABLE` for windowless plugin +
+
UIA +
Depends on format of data file.
+
ATK +
+ Depends on format of data file. If contains a plugin then +
+
+ Role: + `ATK_ROLE_EMBEDDED` +
+
AX + Depends on format of data file. +
Comments +
+

`ol`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `ol` +
[[wai-aria-1.2]] + `list` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`optgroup`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `optgroup` +
[[wai-aria-1.2]] + `group` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`option` (in a list of options or represents a suggestion in a `datalist`)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `option` (in a list of options or represents a suggestion in a `datalist`) +
[[wai-aria-1.2]] + `option` role, with the `aria-selected` state set to "true" if the element's selectedness is true, or "false" otherwise. +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`output`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `output` +
[[wai-aria-1.2]] + `status` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
+ Relations: `IA2_RELATION_LABELLED_BY` with associated `label` element +
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
+ Relations: `ATK_RELATION_LABELLED_BY` with associated `label` element +
+
AX +
Use WAI-ARIA mapping
+
Comments + `AXDescription`: value from associated `label` element subtree. +
undefined +
+

`p`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `p` +
[[wai-aria-1.2]] + `paragraph` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`param`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `param` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments + `param` is obsolete in HTML +
+

`picture`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `picture` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`pre`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `pre` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`progress`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `progress` +
[[wai-aria-1.2]] + `progressbar` role, with, if the progress bar is determinate, the `aria-valuemax` property set to the maximum value of the progress bar, the `aria-valuemin` property set to zero, and the `aria-valuenow` property set to the current value of the progress bar +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`q`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `q` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + `::before` and `::after` CSS pseudo content is used by platforms to render the element's quotation marks. +
+

`rp`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `rp` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ No accessible object. No child elements are exposed if + `ruby` is supported by the browser. +
+
UIA +
+ No accessible object. +
+
ATK +
+ No accessible object. No child elements are + exposed if `ruby` is supported by the browser. +
+
AX + Not mapped +
Comments +
+

`rt`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `rt` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ No accessible object. No child elements are exposed if + `ruby` is supported by the browser. +
+
UIA +
+ No accessible object. +
+
ATK +
+ No accessible object. +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `AXRubyText` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`ruby`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `ruby` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `ROLE_SYSTEM_TEXT`; `IA2_ROLE_TEXT_FRAME` +
+
UIA +
+ Control Type: `Text` +
+
+ Localized Control Type: `"ruby"` +
+
ATK +
+ Role: `ATK_ROLE_STATIC` +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `AXRubyInline` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`s`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `s` +
[[wai-aria-1.2]] + `deletion` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`samp`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `samp` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`script`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `script` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `search` +
[[wai-aria-1.2]] + `search` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`section`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `section` +
[[wai-aria-1.2]] + `region` role if the `section` element has an + accessible name. Otherwise, the `generic` role. +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`select` (with a `multiple` attribute or `size` attribute having value greater than `1`)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `select` + + (with a `multiple` attribute or + `size` attribute having value greater than `1`) + +
[[wai-aria-1.2]] + `listbox` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`select` (with NO `multiple` attribute and NO `size` attribute having value greater than `1`)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `select` + + (with NO `multiple` attribute + and NO `size` attribute having value greater than `1`) + +
[[wai-aria-1.2]] + `combobox` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`slot`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `slot` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`small`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `small` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + Exposed by platform specific font size styles. +
+

`source`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `source` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`span`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `span` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`strong`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `strong` +
[[wai-aria-1.2]] + `strong` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`style`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `style` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+ Note: There are instances where CSS properties can affect what is exposed by accessibility APIs. + For instance, `display: none` or `visibility: hidden` will remove an element from the accessibility tree + and hide its presence from assistive technologies. +
+
+

`sub`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `sub` +
[[wai-aria-1.2]] + `subscript` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`summary`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `summary` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `ROLE_SYSTEM_PUSHBUTTON` +
+
+ States: + `STATE_SYSTEM_EXPANDED` / `STATE_SYSTEM_COLLAPSED` +
+
+ Actions: `expand` / `collapse` +
+
UIA +
+ Control Type: `Button` +
+
+ Control Pattern: `ExpandCollapse` +
+
ATK +
+ Role: `ROLE_TOGGLE_BUTTON` +
+
+ Relations: `ATK_RELATION_DETAILS` +
+
AX +
+ AXRole: `AXDisclosureTriangle` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"disclosure triangle"` +
+
Comments + If a `summary` element is not a child of a `details` element, or it is not the first `summary` element of a parent `details`, + then the `summary` element MUST be exposed with a `generic` role. +
+

`sup`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `sup` +
[[wai-aria-1.2]] + `superscript` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`svg`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `svg` +
[[wai-aria-1.2]] + See comments +
MSAA + IAccessible2 + See comments +
UIA + See comments +
ATK + See comments +
AX + See comments +
Comments + Mapping for `svg` is defined by [[[svg-aam-1.0]]]. + See also Graphics Accessibility API Role Mappings +
+

`table`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `table` +
[[wai-aria-1.2]] + `table` role +
MSAA + IAccessible2 + Use WAI-ARIA mapping +
UIA + Use WAI-ARIA mapping +
ATK + Use WAI-ARIA mapping +
AX + Use WAI-ARIA mapping +
Comments +
+

`tbody`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `tbody` +
[[wai-aria-1.2]] + `rowgroup` role +
MSAA + IAccessible2 + Use WAI-ARIA mapping +
UIA + Use WAI-ARIA mapping +
ATK + Use WAI-ARIA mapping +
AX + Use WAI-ARIA mapping +
Comments +
+

`td`(ancestor `table` element has`table` role)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `td` + (ancestor `table` element has + `table` role) +
[[wai-aria-1.2]] + `cell` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`td`(ancestor `table` element has`grid` or`treegrid` role)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `td` + (ancestor `table` element has + `grid` or + `treegrid` role) +
[[wai-aria-1.2]] + `gridcell` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`template`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `template` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`textarea`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `textarea` +
[[wai-aria-1.2]] + `textbox` role, + with the `aria-multiline` property set to "true" +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`tfoot`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `tfoot` +
[[wai-aria-1.2]] + `rowgroup` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`th`(is not a column header, row header, column group header or row group header, and ancestor `table` element has `table` role)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `th` + (is not a + column header, + row header, + column group header or + row group header, + and ancestor `table` element has + `table` role) + +
[[wai-aria-1.2]] + `cell` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`th`(is not a column header, row header, column group header or row group header, and ancestor `table` element has `grid` or `treegrid` role)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `th` + (is not a + column header, + row header, + column group header or + row group header, + and ancestor `table` element has + `grid` + or `treegrid` role) + +
[[wai-aria-1.2]] + `gridcell` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`th`(is a column header or column group header)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `th` + (is a column header or column group header) +
[[wai-aria-1.2]] + `columnheader` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`th`(is a row header or row group header)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `th` + (is a row header or row group header) +
[[wai-aria-1.2]] + `rowheader` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`thead`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `thead` +
[[wai-aria-1.2]] + `rowgroup` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`time`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `time` +
[[wai-aria-1.2]] + `time` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`title`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `title` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments + A `title` element provides the accessible name for its document. +
+

`tr`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `tr` +
[[wai-aria-1.2]] + `row` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`track`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `track` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`u`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `u` +
[[wai-aria-1.2]] + `generic` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + Exposed by platform specific underline text styles. +
+

`ul`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `ul` +
[[wai-aria-1.2]] + `list` role +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`var`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `var` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
No accessible object. Styles used are mapped to text attributes on its text container.
+
UIA +
No accessible object. Styles used are exposed by UIA text attribute identifiers of the `TextRange` Control Pattern implemented on a parent accessible object. +
+
ATK +
No accessible object. Styles used are mapped to text attributes on its text container.
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+

`video`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `video` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ Role: `ROLE_SYSTEM_GROUPING` +
+
UIA +
+ Control Type: `Group` +
+
Localized Control Type: `"group"`
+
+ Note: If the `controls` attribute is present, UI controls (e.g., play, volume) are exposed as children of the `video` element in the accessibility tree, and mapped as appropriate for the type of control (e.g., `button` or `slider`). +
+
Text objects associated with loading or error messages, and any UI control not currently displayed, MAY be present in the accessibility tree and marked as hidden or off-screen.
+
ATK +
+ Role: `ATK_ROLE_VIDEO` +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `AXVideo` +
+
+ AXRoleDescription: `"video playback"` +
+
+ Note: If the `controls` attribute is present, UI controls (e.g., play, volume) are exposed as descendants of an accessible object with a role of `toolbar`, and mapped as appropriate for the type of control (e.g., `button` or `slider`). +
+
Comments +
+

`wbr`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `wbr` +
[[wai-aria-1.2]] + No corresponding role +
MSAA + IAccessible2 +
+ If a line break is added, expose it with `IAccessibleText` on the text container +
+
UIA +
Not mapped
+
ATK +
+ A line break if added is exposed via Text interface on its text container +
+
AX +
+ AXRole: `AXGroup` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"group"` +
+
Comments +
+
+
+

HTML Attribute State and Property Mappings

+
    +
  • HTML attributes with default WAI-ARIA state and property semantics MUST be mapped to platform accessibility APIs according to those WAI-ARIA state and property mappings as defined in the [[core-aam-1.2]] specification.
  • +
  • A '?' in a cell indicates the data has yet to be provided.
  • +
  • "Not mapped" (Not Applicable) means the attribute does not need to be exposed via an accessibility API. This is usually because the attribute is not displayed as part of the user interface. +
    + In some cases, while not directly exposed to accessibility APIs, an attribute can still impact the accessibility of an element. e.g., `autoplay` will automatically start playing `video` or `audio` elements. +
    +
  • +
  • All elements having an accessible object in IAccessible2 mapping are supposed to implement IAccessible, IAccessible2 and IAccessible2_2 interfaces.
  • +
+

`abbr`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `abbr` +
Element(s) + `th` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Object attributes: + "abbr" until child `abbr` element is provided +
+
UIA +
Not mapped
+
ATK +
+ Object attributes: + "abbr" until child `abbr` element is provided +
+
AX + `AXDescription: <value>` +
Comments +
+

`accept`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `accept` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`accept-charset`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `accept-charset` +
Element(s) + `form` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`accesskey`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `accesskey` +
Element(s) + `HTML elements` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ A key binding accessible by + `accKeyboardShortcut` + and `IAccessibleAction::keyBinding` +
+
UIA +
+ Properties: `AccessKey: <value>` +
+
ATK +
+ `atk_action_get_keybinding` +
+
AX + `AXAccessKey: <value>` +
Comments +
+

`action`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `action` +
Element(s) + `form` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`allow`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `allow` +
Element(s) + `iframe` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`allowfullscreen`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `allowfullscreen` +
Element(s) + `iframe` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`alt`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `alt` +
Element(s) + `area`; + `img`; + `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 + Used for accessible name, + exposed via `accName` +
UIA +
+ Properties: + `Name` +
+
ATK +
+ Used for accessible name, exposed via `atk_object_get_name` +
+
AX + `AXDescription: <value>` +
Comments +
+

`as`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `as` +
Element(s) + `link` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`async`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `async` +
Element(s) + `script` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`autocapitalize`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `autocapitalize` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`autocomplete`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `autocomplete` +
Element(s) + `form` +
[[WAI-ARIA-1.2]] +

`aria-autocomplete`

+
+ Note: the ARIA attribute and the HTML attribute have disparate features. +
+
MSAA + IAccessible2 +
+ States: + `STATE_SUPPORTS_AUTOCOMPLETION` on text form controls until the value is overridden by control +
+
UIA +
Not mapped
+
ATK +
+ States: + `ATK_STATE_SUPPORTS_AUTOCOMPLETION` on text form controls until the value is overridden by control +
+
AX +
Not mapped
+
Comments + If the element includes both `autocomplete` and `aria-autocomplete` attributes with valid values, + User Agents MUST expose only the `autocomplete` attribute value. The `aria-autocomplete` attribute is + not valid on a `form` element. +
+

`autocomplete`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `autocomplete` +
Element(s) + `input`, `select` and `textarea` +
[[WAI-ARIA-1.2]] +

`aria-autocomplete`

+
+ Note: the ARIA attribute and the HTML attribute have disparate features. +
+
MSAA + IAccessible2 +
+ States: `STATE_SUPPORTS_AUTOCOMPLETION` +
+
UIA +
Not mapped
+
ATK +
+ States: `ATK_STATE_SUPPORTS_AUTOCOMPLETION` +
+
AX +
Not mapped
+
Comments + If the element includes both `autocomplete` and `aria-autocomplete` attributes with valid values, + User Agents MUST expose only the `autocomplete` attribute value. +
+

`autofocus`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `autofocus` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`autoplay`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `autoplay` +
Element(s) + `audio` and `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`blocking`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `blocking` +
Element(s) + `link`; + `script`; + `style` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`charset`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `charset` +
Element(s) + `meta` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`checked` (if present)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `checked` (if present) +
Element(s) + `input` `type=checkbox` or `type=radio` +
[[WAI-ARIA-1.2]] + `aria-checked`="true" +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA + Property: `Toggle.ToggleState: On (1)` +
ATK +
Use WAI-ARIA mapping
+
AX + `AXValue: 1` +
Comments + If an `input` element in the `checkbox` or `radio` state includes both the `checked` attribute and the `aria-checked` attribute with a + valid value, User Agents MUST expose only the `checked` attribute value. +
+

`checked` (if absent)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `checked` (if absent) +
Element(s) + `input` `type=checkbox` or `type=radio` +
[[WAI-ARIA-1.2]] + `aria-checked`="false" +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA + Property: `Toggle.ToggleState: Off (0)` +
ATK +
Use WAI-ARIA mapping
+
AX + `AXValue: 0` +
Comments + An `input` element in the `checkbox` or `radio` state without a `checked` attribute has an implicit "false" state. + User Agents MUST ignore an `aria-checked` attribute which conflicts with the native element's implicit checked state. +
+

`cite`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `cite` +
Element(s) + `blockquote`; + `del` and `ins`; + `q` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX + `AXURL: <value>` +
Comments +
+

`class`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `class` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`color`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `color` +
Element(s) + `link` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`cols`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `cols` +
Element(s) + `textarea` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX + `AXRangeForLine: <value>` +
Comments +
Not mapped
+
+

`colspan`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `colspan` +
Element(s) + `td` and `th` +
[[WAI-ARIA-1.2]] + `aria-colspan` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`content`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `content` +
Element(s) + `meta` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`contenteditable`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `contenteditable` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +

If the element is in the editable state, the following mappings apply to the element and every nested accessible object with the + exception of those which have been specified in the `false` state.

+
+ States: + `IA2_STATE_EDITABLE` and `IA2_STATE_MULTI_LINE` +
+
+ Interfaces: + `IAccessibleEditableText` +
+

If the element is in the `false` state: not mapped.

+

If the element is in the `inherit` state: match the editable state of its parent element.

+
UIA +

If the element is in the editable state, the following mappings apply to the element and every nested accessible object with the + exception of those which have been specified in the `false` state.

+
+ Control Pattern: `TextEdit` +
+
+ Property: `AriaProperties.multiline:true` +
+

If the element is in the `false` state: not mapped.

+

If the element is in the `inherit` state: match the editable state of its parent element.

+
ATK +

If the element is in the editable state, the following mappings apply to the element and every nested accessible object with the + exception of those which have been specified in the `false` state.

+
+ States: + `ATK_STATE_EDITABLE` and `ATK_STATE_MULTI_LINE` +
+
+ Interfaces: `AtkEditableText` +
+

If the element is in the `false` state: not mapped.

+

If the element is in the `inherit` state: match the editable state of its parent element.

+
AX + Role: + AXTextArea +
Use WAI-ARIA mapping
+
Comments + If the element is set to `contenteditable` and `aria-readonly="true"`, User Agents MUST expose only the `contenteditable` state. +
+

`controls`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `controls` +
Element(s) + `audio` and `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX + Controls exposed as `AXToolbar` +
Comments +
+

`coords`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `coords` +
Element(s) + `area` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Defines an accessible object's dimensions (`IAccessible::accLocation`) +
+
UIA +
+ Defines an accessible object's dimensions (`BoundingRectangle`) +
+
ATK +
+ Defines an accessible object's dimensions, exposed via `atk_component_get_position` and `atk_component_get_size` +
+
AX +
+ Defines an accessible object's dimensions, exposed via `Frame` property +
+
Comments +
+

`crossorigin`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `crossorigin` +
Element(s) + `audio`; + `img`; + `link`; + `script`; + `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`data`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `data` +
Element(s) + `object` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`datetime`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `datetime` +
Element(s) + `del` and `ins` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Object attributes: `datetime: <value>` +
+
UIA +
Not mapped
+
ATK +
+ Object attributes: `datetime: <value>` +
+
AX + `AXDateTimeValue: <value>` +
Comments +
+

`datetime`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `datetime` +
Element(s) + `time` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Object attributes: `datetime: <value>` +
+
UIA +
+ Properties: `FullDescription: <value>` +
+
ATK +
+ Object attributes: `datetime: <value>` +
+
AX + `AXDateTimeValue: <value>` +
Comments +
+

`decoding`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `decoding` +
Element(s) + `img` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`default`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `default` +
Element(s) + `track` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`defer`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `defer` +
Element(s) + `script` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`dir`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `dir` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Exposed as "writing-mode" text attribute on the text container. +
+
UIA +
+ Exposed by `TextFlowDirections` attribute of the `TextRange` Control Pattern implemented on a parent accessible object. +
+
ATK +
+ Exposed as "writing-mode" text attribute on the text container. +
+
AX +
Not mapped
+
Comments +
+

`dir`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `dir` +
Element(s) + `bdo` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Exposed as "writing-mode" text attribute on the text container. +
+
UIA +
+ Exposed by `TextFlowDirections` attribute of the `TextRange` Control Pattern implemented on a parent accessible object. +
+
ATK +
+ Exposed as "writing-mode" text attribute on the text container. +
+
AX +
Not mapped
+
Comments +
+

`dirname`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `dirname` +
Element(s) + `input` and + `textarea` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`disabled`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `disabled` +
Element(s) + `button`; + `input`; + `optgroup`; + `option`; + `select`; + `textarea`; + form-associated custom element +
[[WAI-ARIA-1.2]] + `aria-disabled="true"` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + If the element has both the `disabled` attribute and the `aria-disabled` attribute with a valid value, + User Agents MUST expose only the `disabled` attribute value. +
+

`disabled`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `disabled` +
Element(s) + `fieldset` +
[[WAI-ARIA-1.2]] + `aria-disabled="true"` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +

Form controls within a valid [^legend^] child element of a `fieldset` with a `disabled` attribute + do not become disabled.

+

If the element has both the `disabled` attribute and the `aria-disabled` attribute with a valid value, + User Agents MUST expose only the `disabled` attribute value.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `disabled` +
Element(s) + `link` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 + Not mapped +
UIA + Not mapped +
ATK + Not mapped +
AX + Not mapped +
Comments +
+

`download`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `download` +
Element(s) + `a` and `area` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`draggable`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `draggable` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Object attributes: draggable:true +
+
UIA +
Not mapped
+
ATK +
+ Object attributes: draggable:true +
+
AX +
Not mapped
+
Comments +
+

`enctype`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `enctype` +
Element(s) + `form` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`enterkeyhint`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `enterkeyhint` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments + Modifies the action label (or icon) to present for the + enter key on virtual keyboards. +
+

`fetchpriority`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `fetchpriority` +
Element(s) + `img`; + `link`; + `script` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`for`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `for` +
Element(s) + `label` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Used for accessible name +
+
+ Relations: + `IA2_RELATION_LABEL_FOR` and `IA2_RELATION_LABEL_BY` relations between + `label` and referred labelable element +
+
UIA +
+ Used for accessible name +
+
+ When the `label` element has a `for` attribute referencing another labelable element, + the `LabeledBy` property for the referenced element points to the UIA element for the `label` element. +
+
ATK +
+ Used for accessible name +
+
+ Relations: + `ATK_RELATION_LABEL_FOR` and `ATK_RELATION_LABEL_BY` relations between + `label` and referred labelable element +
+
AX +
+ Used for accessible name +
+
Comments +
+

`for`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `for` +
Element(s) + `output` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Relations: + `IA2_RELATION_CONTROLLED_BY` with an element pointed by the attribute. Paired element exposes `IA2_RELATION_CONTROLLER_FOR` relation. +
+
UIA +
Not mapped
+
ATK +
+ Relations: + `ATK_RELATION_CONTROLLED_BY` with an element pointed by the attribute. Paired element exposes `ATK_RELATION_CONTROLLER_FOR` relation. +
+
AX +
Not mapped
+
Comments +
+

`form`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `form` +
Element(s) + `button`; + `fieldset`; + `input`; + `label`; + `object`; + `output`; + `select`; + `textarea`; + form-associated custom element +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`formaction`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `formaction` +
Element(s) + `button`; + `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`formenctype`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `formenctype` +
Element(s) + `button`; + `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`formmethod`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `formmethod` +
Element(s) + `button`; + `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`formnovalidate`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `formnovalidate` +
Element(s) + `button`; + `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`formtarget`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `formtarget` +
Element(s) + `button`; `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`headers`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `headers` +
Element(s) + `td`; + `th` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Links the cell to its header cells. Exposed via `IAccessibleTableCell::rowHeaderCells` and `IAccessibleTableCell::columnHeaderCells`. +
+
UIA +
+ Links the cell to its header cells. Exposed via `Table.ItemColumnHeaderItems` and `Table.ItemRowHeaderItems`. +
+
ATK +
+ Links the cell to its row and column header cells + (note, only one row and one column header cells can be exposed because of API restrictions). + See `atk_table_get_row_header` and `atk_table_get_column_header`. +
+
AX + Expose via `AXColumnHeaderUIElements` and `AXRowHeaderUIElements` +
Comments +
+

`height`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `height` +
Element(s) + `canvas`; + `embed`; + `iframe`; + `img`; + `input`; + `object`; + `source` (in `picture`); + `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Defines an accessible object's height (`IAccessible::accLocation`) +
+
UIA +
+ Defines an accessible object's height (`BoundingRectangle`) +
+
ATK +
+ Defines an accessible object's height (`atk_component_get_size`) +
+
AX +
+ Defines an accessible object's height + (`AXSize` property) +
+
Comments +
+

`hidden`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `hidden` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] + `aria-hidden="true"` if the element retains its user agent default styling of `display: none`. Otherwise, if no other method for hiding the content is used (e.g., `visibility: hidden`) then it is not mapped. +
MSAA + IAccessible2 + Use WAI-ARIA mapping +
UIA + Use WAI-ARIA mapping +
ATK + Use WAI-ARIA mapping +
AX + Use WAI-ARIA mapping +
Comments +
+

`high`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `high` +
Element(s) + `meter` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
Not mapped
+
UIA + `RangeValue.Maximum` +
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`href`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `href` +
Element(s) + `a`; `area` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Creates a link accessible object. For details, refer to + `a` and `area` element mappings. +
+
UIA + Creates a link accessible object. For details, refer to + `a` and `area` element mappings. The value of the `href` attribute is stored in the `Value.Value` UIA property. +
ATK +
+ Creates a link accessible object. For details, refer to + `a` and `area` element mappings. +
+
AX + `AXURL: <value>` +
Comments +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `href` +
Element(s) + `link` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`hreflang`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `hreflang` +
Element(s) + `a`; + `link` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`http-equiv`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `http-equiv` +
Element(s) + `meta` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`id`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `id` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`inert`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `inert` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] + Not Mapped +
MSAA + IAccessible2 + See comments +
UIA + See comments +
ATK + See comments +
AX + See comments +
Comments +

+ Nodes that are inert are not exposed to an accessibility API. +

+

+ Note: an inert node can have descendants that are not inert. For example, a + modal dialog + can escape an inert subtree. +

+
+

`indeterminate [IDL]`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `indeterminate [IDL]` +
Element(s) + HTML elements; + `input` +
[[WAI-ARIA-1.2]] + `aria-checked` (state)="mixed" +
MSAA + IAccessible2 + Use WAI-ARIA mapping +
UIA + Use WAI-ARIA mapping +
ATK + Use WAI-ARIA mapping +
AX + Use WAI-ARIA mapping +
Comments + If the element has the `indeterminate [IDL]` set and the `aria-checked` attribute set, User Agents MUST expose only the`indeterminate [IDL]` state. +
+

`ismap`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `ismap` +
Element(s) + `img` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`itemid`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `itemid` +
Element(s) + `img` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`itemprop`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `itemprop` +
Element(s) + `img` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`itemref`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `itemref` +
Element(s) + `img` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`itemscope`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `itemscope` +
Element(s) + `img` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`itemtype`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `itemtype` +
Element(s) + `img` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`kind`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `kind` +
Element(s) + `track` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 + Not mapped +
UIA + Not mapped +
ATK + Not mapped +
AX + Not mapped +
Comments +
+

`label`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `label` +
Element(s) + `optgroup`; + `option`; + `track` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Associates the accessible name +
+
UIA + The target element of the `label` attribute has a `LabeledBy` property pointing to the element with the `label` attribute. Participates in name computation. +
ATK +
+ Associates the accessible name +
+
AX + `AXTitle`: `<value>` +
Comments + See Also: Accessible Name and Description: Computation and API Mappings 1.1 +
+

`lang`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `lang` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Exposed as "language" text attribute on the text container +
+
UIA +
+ The value of the `lang` attribute is exposed as a locale identifier by `Culture` property of the UIA element representing the HTML element, and by `Culture` attribute of the `TextRange` Control Pattern implemented on a parent accessible object. +
+
ATK +
+ Exposed as "language" text attribute on the text container +
+
AX + `AXLanguage: <value>` +
Comments +
+

`list`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `list` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] + `aria-controls` +
MSAA + IAccessible2 +
+ `IA2_RELATION_CONTROLLER_FOR` point to the `datalist` element referred to by the IDREF value of the `list` attribute. +
+
UIA +
+ `ControllerFor` point to the `datalist` element referred to by the IDREF value of the `list` attribute. +
+
ATK +
+ `ATK_RELATION_CONTROLLER_FOR` point to the `datalist` element referred to by the IDREF value of the `list` attribute. +
+
AX +
+ Property: `AXLinkedUIElements`: point to the `datalist` element referred to by the IDREF value of the `list` attribute. +
+
Comments + Refer to `datalist` + and `input` element mappings. +
+

`loop`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `loop` +
Element(s) + `audio`; + `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`low`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `low` +
Element(s) + `meter` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
Not mapped
+
UIA +
`RangeValue.Minimum`
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`max`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `max` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] + `aria-valuemax` +
MSAA + IAccessible2 +
+ Exposed as `IAccessibleValue::maximumValue` if the element implements the interface +
+
UIA + `RangeValue.Maximum` +
ATK +
+ Exposed as `atk_value_get_maximum_value` if the element implements the `AtkValue` interface +
+
AX + `AXMaxValue: <value>` +
Comments +
+

`max`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `max` +
Element(s) + `meter`; + `progress` +
[[WAI-ARIA-1.2]] + `aria-valuemax` +
MSAA + IAccessible2 +
+ Exposed as `IAccessibleValue::maximumValue` if the element implements the interface +
+
UIA + `RangeValue.Maximum` +
ATK +
+ Exposed as `atk_value_get_maximum_value` if the element implements the `AtkValue` interface +
+
AX + `AXMaxValue: <value>` +
Comments +
+

`maxlength`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `maxlength` +
Element(s) + `input`; + `textarea` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`media`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `media` +
Element(s) + `link`; + `meta`; + `source` (in `picture`); + `style` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`method`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `method` +
Element(s) + `form` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`min`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `min` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] + `aria-valuemin` +
MSAA + IAccessible2 +
+ Exposed as `IAccessibleValue::minimumValue` if the element + implements the interface +
+
UIA + `RangeValue.Minimum` +
ATK +
+ Exposed as `atk_value_get_minimum_value` if the element + implements the `AtkValue` interface +
+
AX + `AXMinValue: <value>` +
Comments +
+

`min`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `min` +
Element(s) + `meter` +
[[WAI-ARIA-1.2]] + `aria-valuemin` +
MSAA + IAccessible2 +
+ Exposed as `IAccessibleValue::minimumValue` if the element implements the interface +
+
UIA + `RangeValue.Minimum` +
ATK +
+ Exposed as `atk_value_get_minimum_value` if the element implements the `AtkValue` interface +
+
AX + `AXMinValue: <value>` +
Comments +
+

`minlength`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `minlength` +
Element(s) + `input`; + `textarea` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ States: + `IA2_STATE_INVALID_ENTRY` if value doesn't meet the designated minimum length value. +
+
UIA +
+ States: + `IsDataValidForForm` if value doesn't meet the designated minimum length value. +
+
ATK +
+ States: + `ATK_STATE_INVALID_ENTRY` if value doesn't meet the designated minimum length value. +
+
AX +
+ Property: + `AXInvalid`: `true` if value doesn't meet the designated minimum length value. +
+
Comments +
+

`multiple`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `multiple` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`multiple`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `multiple` +
Element(s) + `select` +
[[WAI-ARIA-1.2]] + `aria-multiselectable="true"` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`muted`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `muted` +
Element(s) + `audio`; + `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`name`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `name` +
Element(s) + `button`; + `fieldset`; + `input`; + `output`; + `select`; + `textarea`; + form-associated custom element +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`name`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `name` +
Element(s) + `form` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`name`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `name` +
Element(s) + `iframe`; + `object` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`name`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `name` +
Element(s) + `map` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`name`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `name` +
Element(s) + `meta` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`name`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `name` +
Element(s) + `slot` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`nomodule`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `nomodule` +
Element(s) + `script` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`nonce`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `nonce` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`novalidate`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `novalidate` +
Element(s) + `form` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`open`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `open` +
Element(s) + `details` +
[[WAI-ARIA-1.2]] + `aria-expanded`="true | false" +
MSAA + IAccessible2 + `STATE_SYSTEM_EXPANDED`
`STATE_SYSTEM_COLLAPSED` +
UIA + `ExpandCollapsePattern` +
ATK +
+ States: + `ATK_STATE_COLLAPSED` or `ATK_STATE_EXPANDED` depending + on the attribute value +
+
AX + `AXExpanded: YES|NO` +
Comments + Set properties on the `summary` element. +
+

`open`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `open` +
Element(s) + `dialog` +
[[WAI-ARIA-1.2]] +
+ If the `open` attribute is set via the `showModal()` method then `aria-modal="true"` and `aria-hidden="false"`. +
+
+ Otherwise, if the `open` attribute is set via the `show()` method, or explicitly specified by an author, then `aria-modal="false"` and `aria-hidden="false"`. +
+
MSAA + IAccessible2 + Use WAI-ARIA mapping +
UIA + Use WAI-ARIA mapping +
ATK + Use WAI-ARIA mapping +
AX + Use WAI-ARIA mapping +
Comments +

+ The `open` attribute's value is irrelevant. When the `open` attribute is not specified the default user agent styling for a `dialog` is `display: none`. +

+

+ Authors can reveal a `dialog` through the style layer by modifying its `display` property. If revealed this way then the `dialog` is `aria-modal="false"` and `aria-hidden="false"`. +

+
+

`optimum`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `optimum` +
Element(s) + `meter` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`pattern`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `pattern` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] +
+ If the value doesn't match the pattern: `aria-invalid="true"`; + Otherwise, `aria-invalid="false"` +
+
MSAA + IAccessible2 + Use WAI-ARIA mapping +
UIA + Use WAI-ARIA mapping +
ATK + Use WAI-ARIA mapping +
AX + Use WAI-ARIA mapping +
Comments +
+

`ping`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `ping` +
Element(s) + `a` and `area` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`placeholder`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `placeholder` +
Element(s) + `input`; + `textarea` +
[[WAI-ARIA-1.2]] + `aria-placeholder` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
When the `placeholder` and `aria-placeholder` attributes are both present, and the `placeholder` attribute's value is non-empty, user agents MUST expose the value of the `placeholder` attribute, and ignore `aria-placeholder`. If the `placeholder` attribute's value is empty, then user agents MUST expose the value of the `aria-placeholder` attribute.
+
+

`playsinline`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `playsinline` +
Element(s) + `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`poster`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `poster` +
Element(s) + `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`preload`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `preload` +
Element(s) + `audio` and `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`readonly`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `readonly` +
Element(s) + `input`; + `textarea`; + form-associated custom elements +
[[WAI-ARIA-1.2]] + `aria-readonly="true"` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + If the element includes both the `readonly` attribute and the `aria-readonly` attribute with a valid value, User Agents MUST expose only the `readonly` attribute value. +
+

`referrerpolicy`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `referrerpolicy` +
Element(s) + `a`; + `area`; + `iframe`; + `img`; + `link`; + `script` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`rel`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `rel` +
Element(s) + `a`; + `area`; + `link` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`required`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `required` +
Element(s) + `input`; + `select`; + `textarea` +
[[WAI-ARIA-1.2]] + `aria-required` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + If the element includes both the `required` attribute and the `aria-required` attribute with a valid value, User Agents MUST expose only the `required` attribute value. +
+

`reversed`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `reversed` +
Element(s) + `ol` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Reverses the numerical or alphabetical order of the child list item markers. +
+
UIA +
+ Reverses the numerical or alphabetical order of the child list item markers. +
+
ATK +
+ Reverses the numerical or alphabetical order of the child list item markers. +
+
AX +
+ Reverses the numerical or alphabetical order of the child list item markers. +
+
Comments +
+

`rows`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `rows` +
Element(s) + `textarea` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`rowspan`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `rowspan` +
Element(s) + `td`; + `th` +
[[WAI-ARIA-1.2]] + `aria-rowspan` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`sandbox`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `sandbox` +
Element(s) + `iframe` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`scope`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `scope` +
Element(s) + `th` +
[[WAI-ARIA-1.2]] +
+ If `scope="row"` then map `th` to `rowheader` +
+
+ If `scope="col"` then map `th` to `columnheader` +
+
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`selected`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `selected` +
Element(s) + `option` +
[[WAI-ARIA-1.2]] + `aria-selected="true"` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments + If the element includes both the `selected` attribute and the `aria-selected` attribute with a valid value, User Agents MUST expose only the `selected` attribute value. +
+

`shape`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `shape` +
Element(s) + `area` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`size`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `size` +
Element(s) + `input`; + `select` +
[[WAI-ARIA-1.2]] +
+ Not mapped for `input` elements. +
+
+ If greater than 1, then creates a listbox accessible object. Refer to `select` element for details. +
+
MSAA + IAccessible2 +
Not mapped for `input` elements.
+
For `select` element use WAI-ARIA mapping.
+
UIA +
Not mapped for `input` elements.
+
For `select` element use WAI-ARIA mapping.
+
ATK +
Not mapped for `input` elements.
+
For `select` element use WAI-ARIA mapping.
+
AX +
Not mapped for `input` elements.
+
For `select` element use WAI-ARIA mapping.
+
Comments + For `input` elements that allow the `size` attribute, the attribute will modify their default width. A width provided by CSS will negate the effects of the `size` attribute on these `input` elements. +
+

`sizes`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `sizes` +
Element(s) + `link` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`sizes`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `sizes` +
Element(s) + `img`; + `source` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`slot`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `slot` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`span`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `span` +
Element(s) + `col`; + `colgroup` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
+ Exposed as `IAccessibleTableCell::columnExtent` on all cells at the column +
+
UIA +
+ Exposed as `GridItem.ColumnSpan` on all cells at the column +
+
ATK +
+ Exposed via `atk_table_get_column_extent_at` +
+
AX +
+ `AXColumnIndexRange.length: <value>` +
+
Comments +
+

`spellcheck`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `spellcheck` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] + `aria-invalid="spelling"` or `grammar` +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`src`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `src` +
Element(s) + `audio`; + `embed`; + `iframe`; + `img`; + `input`; + `script`; + `source` (in `audio` or `video`); + `track`; + `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Object attributes: + `src` on `img` only +
+
UIA +
Not mapped
+
ATK +
+ Object attributes: + `src` on `img` only +
+
AX + `AXURL: <value>` on `img` and `input type="image"` +
Comments +
+

`srcdoc`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `srcdoc` +
Element(s) + `iframe` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`srclang`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `srclang` +
Element(s) + `track` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`srcset`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `srcset` +
Element(s) + `img`; + `source` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not Mapped
+
Comments +
+

`start`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `start` +
Element(s) + `ol` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Changes the first number of the child list item accessible objects to match the `start` attribute's value. +
+
UIA +
+ Changes the first number of the child list item accessible objects to match the `start` attribute's value. +
+
ATK +
+ Changes the first number of the child list item accessible objects to match the `start` attribute's value. +
+
AX +
+ Changes the first number of the child list item accessible objects to match the `start` attribute's value. +
+
Comments +
+

`step`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `step` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA + If the `input` is in the `Range` state, set both `RangeValue.SmallChange` and `RangeValue.LargeChange` to the value of `step`. +
ATK +
+ Exposed as `atk_value_get_minimum_increment` if the element implements the `AtkValue` interface. +
+
AX + Not mapped +
Comments +
+

`style`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `style` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`tabindex`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `tabindex` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] + See Focus States and Events Table +
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+

`target`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `target` +
Element(s) + `a`; + `area` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`target`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `target` +
Element(s) + `base` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`target`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `target` +
Element(s) + `form` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`title`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `title` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
+ Either the accessible name, or the + accessible description, or Not mapped (see Comments). +
+
MSAA + IAccessible2 +
Use WAI-ARIA mapping
+
UIA +
Use WAI-ARIA mapping
+
ATK +
Use WAI-ARIA mapping
+
AX +
Use WAI-ARIA mapping
+
Comments +
+ The Accessible Name and Description Computation section specifies if the `title` attribute will be mapped and, if so, through what [[WAI-ARIA]] property. +
+
+

`title`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `title` +
Element(s) + `abbr`; + `dfn` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Associates the accessible name +
+
UIA +
+ Associates the accessible name +
+
ATK +
+ Associates the accessible name +
+
AX + `AXExpandedTextValue: <value>` +
Comments +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `title` +
Element(s) + `link` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 + Not mapped +
UIA + Not mapped +
ATK + Not mapped +
AX + Not mapped +
Comments +
+

`title`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `title` +
Element(s) + `link`; `style` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments + Provides the name for the CSS style sheet. +
+

`translate`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `translate` +
Element(s) + HTML elements +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `type` +
Element(s) + `a`; + `link` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`type`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `type` +
Element(s) + `button` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
+ `submit` type may be a default button in the form. +
+
UIA +
+ `submit` type may be a default button in the form. +
+
ATK +
+ `submit` type may be a default button in the form. +
+
AX +
+ `submit` type may be a default button in the form. +
+
Comments +
+

`type`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `type` +
Element(s) + `embed`; + `object`; + `script`; + `source` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`type`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `type` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] + Refer to WAI-ARIA mappings for input types with defined ARIA roles. +
MSAA + IAccessible2 +
+ Defines the accessible role, states and other properties, refer to + type="`text`", + type="`password`", + type="`button`", etc +
+
UIA +
+ Defines the accessible role, states and other properties, refer to + type="`text`", + type="`password`", + type="`button`", etc +
+
ATK +
+ Defines the accessible role, states and other properties, refer to + type="`text`", + type="`password`", + type="`button`", etc +
+
AX +
+ Defines the accessible role, states and other properties, refer to + type="`text`", + type="`password`", + type="`button`", etc +
+
Comments +
+

`type`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `type` +
Element(s) + `ol` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
+ Defines the list item marker, which has no accessible object, but is exposed as content in the accessible text of the associated list item. +
+
+ Interfaces: `IAccessibleText2` +
+
UIA +
+ Defines the list item marker, which has no accessible object, but is exposed as content in the accessible text of the associated list item. +
+
Control Pattern: `Text`
+
ATK +
+ Defines the list item marker, which has no accessible object, but is exposed as content in the accessible text of the associated list item. +
+
+ Interfaces: `ATKText` +
+
AX +
Defines the list item marker, which is exposed as content in `AXValue`, and rendered as an accessible object:
+
+ AXRole: `AXListMarker` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `"list marker"` +
+
Comments +
Some platforms (IAccessible2, ATK, UIA) do not expose an accessible object for the list item marker, whether it was created and then pruned from the accessibility tree, or never created in the first place. Instead, they expose the list item marker as part of the associated list item's accessible text. In these cases, implementors need to consider such things as adjusting the offsets (e.g., for caret-moved events, text-selection events, etc.) for the updated list item text that now also contains the list item marker as content, rather than just taking the offsets unmodified from the list item renderer.
+
+

`usemap`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `usemap` +
Element(s) + `img` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Responsible for image map creation. +
+
UIA +
+ Responsible for image map creation. +
+
ATK +
+ Responsible for image map creation. +
+
AX +
+ Responsible for image map creation. +
+
Comments + Refer to `img` element. +
+

`value`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `value` +
Element(s) + `button`; + `option` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`value`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `value` +
Element(s) + `data` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
+

`value`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `value` +
Element(s) + `input` +
[[WAI-ARIA-1.2]] + Not mapped +
MSAA + IAccessible2 +
+ Associates the accessible value for entry type input elements + and accessible name for button type input elements +
+
UIA +
+ Associates the accessible value for entry type input elements + and accessible name for button type input elements +
+
ATK +
+ Associates the accessible value for entry type input elements + and accessible name for button type input elements +
+
AX + `AXValue: <value>` +
Comments +
+

`value`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `value` +
Element(s) + `li` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Exposed as first text node of `li`'s accessible object. +
+
UIA +
+ Expose the value of the `value` attribute as the first text node in the list item. + If the value of the `value` attribute is an integer, set the UIA `PositionInSet` property to the integer value. +
+
ATK +
+ Exposed as first text node of `li`'s accessible object. +
+
AX +
Exposed as `AXValue: <value>` with accessible object:
+
+ AXRole: `AXListMarker` +
+
+ AXSubrole: `(nil)` +
+
+ AXRoleDescription: `list marker` +
+
Comments +
+

`value`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `value` +
Element(s) + `meter`; + `progress` +
[[WAI-ARIA-1.2]] + `aria-valuenow` +
MSAA + IAccessible2 +
+ Exposed as `IAccessibleValue::currentValue` +
+
UIA +
+ Exposed as `Value.Value` +
+
ATK +
+ Exposed as `atk_value_get_current_value` +
+
AX +
+ `AXValue: <value>` +
+
Comments +
+

`width`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `width` +
Element(s) + `canvas`; + `embed`; + `iframe`; + `img`; + `input`; + `object`; + `source` (in `picture`); + `video` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
+ Defines an accessible object's width (`IAccessible::accLocation`) +
+
UIA +
+ Defines an accessible object's width (`BoundingRectangle`) +
+
ATK +
+ Defines an accessible object's width (`atk_component_get_size`) +
+
AX + `AXSize: w=n` +
Comments +
+

`wrap`

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HTML Specification + `wrap` +
Element(s) + `textarea` +
[[WAI-ARIA-1.2]] +
Not mapped
+
MSAA + IAccessible2 +
Not mapped
+
UIA +
Not mapped
+
ATK +
Not mapped
+
AX +
Not mapped
+
Comments +
@@ -6427,6 +16589,125 @@

Accessible Description Computation

+ + +

Privacy considerations

From c3256547adc5aaf2c8afae54c9611b905c703ab1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 2 Sep 2023 16:35:37 +0000 Subject: [PATCH 2/9] chore: sync from w3c/aria-common Generated by https://github.com/w3c/aria-common/commit/56a629e259716e64c012a21af97266bc69efa8ce --- html-aam/common/script/mapping-tables.js | 262 ----------------------- 1 file changed, 262 deletions(-) delete mode 100644 html-aam/common/script/mapping-tables.js diff --git a/html-aam/common/script/mapping-tables.js b/html-aam/common/script/mapping-tables.js deleted file mode 100644 index 0be8558d7..000000000 --- a/html-aam/common/script/mapping-tables.js +++ /dev/null @@ -1,262 +0,0 @@ -/* global mappingTables */ - -function hideElement(element) { - element.style.display = "none"; -} - -function showElement(element) { - element.style.display = "block"; -} - -function queryAll(selector, context) { - context = context || document; - return Array.prototype.slice.call(context.querySelectorAll(selector)); -} - -function getElementIndex(el) { - var i = 1; - while ((el = el.previousElementSibling)) { - i++; - } - return i; -} - -var mappingTableInfos = []; - -function viewAsSingleTable(tableContainer, detailsContainer) { - hideElement(detailsContainer); - showElement(tableContainer); - - // Remove ids from summary - queryAll("summary", detailsContainer).forEach(function (summary) { - summary.dataset["id"] = summary.id; - summary.removeAttribute("id"); - }); - - // Add ids to table - queryAll("tbody tr", tableContainer).forEach(function (tr) { - tr.id = tr.dataset["id"]; - tr.removeAttribute("data-id"); - }); -} - -function viewAsDetails(tableContainer, detailsContainer) { - hideElement(tableContainer); - showElement(detailsContainer); - - // Remove ids from table - queryAll("tbody tr", tableContainer).forEach(function (tr) { - tr.dataset["id"] = tr.id; - tr.removeAttribute("id"); - }); - - // Add ids to summary - queryAll("summary", detailsContainer).forEach(function (summary) { - summary.id = summary.dataset["id"]; - summary.removeAttribute("data-id"); - }); -} - -function expandReferredDetails(summaryFragId) { - // if details element is not open, activate click on summary - if (!summaryFragId.parentNode.open) { - summaryFragId.click(); - } -} - -function mappingTables() { - queryAll(".table-container").forEach(function (container) { - // object to store information about a mapping table. - var tableInfo = {}; - mappingTableInfos.push(tableInfo); - - // store a reference to the container and hide it - tableInfo.tableContainer = container; - hideElement(container); - - // store a reference to the table - tableInfo.table = container.querySelector("table"); - - // create a container div to hold all the details element and insert after table - tableInfo.detailsContainer = document.createElement("div"); - tableInfo.detailsContainer.className = "details"; - tableInfo.id = tableInfo.table.id + "-details"; - tableInfo.tableContainer.insertAdjacentElement( - "afterend", - tableInfo.detailsContainer - ); - - // add switch to view as single table or details/summary - var viewSwitch = document.createElement("button"); - viewSwitch.className = "switch-view"; - viewSwitch.innerHTML = mappingTableLabels.viewByTable; - tableInfo.tableContainer.insertAdjacentElement( - "beforebegin", - viewSwitch - ); - - // store the table's column headers in array colHeaders - // TODO: figure out what browsers we have to support and replace this with Array#map if possible - var colHeaders = []; - queryAll("thead th", tableInfo.table).forEach(function (th) { - colHeaders.push(th.innerHTML); - }); - - // remove first column header from array - colHeaders.shift(); - // for each row in the table, create details/summary.. - - queryAll("tbody tr", tableInfo.table).forEach(function (row) { - var caption = row.querySelector("th").innerHTML; - var summary = caption.replace(/]+>|<\/a>/g, ""); - // get the tr's @id - var id = row.id; - row.dataset.id = id; - - // remove the tr's @id since same id will be used in the relevant summary element - row.removeAttribute("id"); - // store the row's cells in array rowCells - var rowCells = []; - // add row cells to array rowCells for use in the details' table - queryAll("td", row).forEach(function (cell) { - rowCells.push(cell.innerHTML); - }); - // clone colHeaders array for use in details table row headers - var rowHeaders = colHeaders.slice(0); - // if attributes mapping table... - if (tableInfo.table.classList.contains("attributes")) { - // remove second column header from array - rowHeaders.shift(); - // remove and store "HTML elements" cell from rowCells array for use in details' summary and table caption - var relevantElsCaption = rowCells.shift(); - var relevantElsSummary = relevantElsCaption.replace( - /]+>|<\/a>/g, - "" - ); - } - - // create content for each

element; add row header's content to summary - var details = document.createElement("details"); - details.className = "map"; - - var detailsHTML = '' + summary; - - // if attributes mapping table, append relevant elements to summary - if (tableInfo.table.classList.contains("attributes")) { - detailsHTML += " [" + relevantElsSummary + "]"; - } - - detailsHTML += ""; - - // add table rows using appropriate header from detailsRowHead array and relevant value from rowCells array - for (var i = 0, len = rowCells.length; i < len; i++) { - detailsHTML += - ""; - } - detailsHTML += "
" + caption; - - if (tableInfo.table.classList.contains("attributes")) { - detailsHTML += " [" + relevantElsCaption + "]"; - } - - detailsHTML += "
" + - rowHeaders[i] + - "" + - rowCells[i] + - "
"; - details.innerHTML = detailsHTML; - - // append the
element to the detailsContainer div - tableInfo.detailsContainer.appendChild(details); - }); - - // add 'expand/collapse all' functionality - var expandAllButton = document.createElement("button"); - expandAllButton.className = "expand"; - expandAllButton.innerHTML = mappingTableLabels.expand; - - var collapseAllButton = document.createElement("button"); - collapseAllButton.disabled = true; - collapseAllButton.className = "collapse"; - collapseAllButton.innerHTML = mappingTableLabels.collapse; - - tableInfo.detailsContainer.insertBefore( - collapseAllButton, - tableInfo.detailsContainer.firstChild - ); - tableInfo.detailsContainer.insertBefore( - expandAllButton, - tableInfo.detailsContainer.firstChild - ); - }); - - // if page URL links to frag id, reset location to frag id once details/summary view is set - if (window.location.hash) { - var hash = window.location.hash; - window.location = hash; - var frag = document.querySelector(hash); - // if frag id is for a summary element, expand the parent details element - if (frag && frag.tagName === "SUMMARY") { - expandReferredDetails(hash); - } - } - - // Add a hook to expand referred details element when whose @href is fragid of a is clicked. - queryAll('a[href^="#"]').forEach(function (a) { - var fragId = a.getAttribute("href"); - - if (fragId.tagName === "SUMMARY") { - a.addEventListener("click", function () { - expandReferredDetails(fragId); - }); - } - }); -} - -document.addEventListener("DOMContentLoaded", () => { - document.querySelectorAll("button.switch-view").forEach(function (b) { - b.addEventListener("click", function () { - tableContainer = b.parentElement.querySelector(".table-container"); - table = tableContainer.querySelector("table"); - detailsContainer = b.parentElement.querySelector(".details"); - - if (detailsContainer.style.display !== "none") { - viewAsSingleTable(tableContainer, detailsContainer); - // toggle the viewSwitch label from view-as-single-table to view-by-X - b.innerHTML = mappingTableLabels.viewByLabels[table.id]; - } else { - viewAsDetails(tableContainer, detailsContainer); - // toggle the viewSwitch label from view-by-X to view-as-single-table. - b.innerHTML = mappingTableLabels.viewByTable; - } - }); - }); - - var expandCollapseDetails = function (detCont, action) { - queryAll("details", detCont).forEach(function (details) { - details.open = action !== "collapse"; - }); - }; - - document.querySelectorAll("button.expand").forEach(function (b) { - b.addEventListener("click", function () { - detailsContainer = b.parentElement; - expandCollapseDetails(detailsContainer, "expand"); - b.disabled = true; - b.parentElement - .querySelector("button.collapse") - .removeAttribute("disabled"); - }); - }); - - document.querySelectorAll("button.collapse").forEach(function (b) { - b.addEventListener("click", function () { - detailsContainer = b.parentElement; - expandCollapseDetails(detailsContainer, "collapse"); - b.disabled = true; - b.parentElement - .querySelector("button.expand") - .removeAttribute("disabled"); - }); - }); -}); From 95fb1d40e07cebcf55864e1c912d1a808384c3e9 Mon Sep 17 00:00:00 2001 From: Yummy_Bacon5 <68166338+YummyBacon5@users.noreply.github.com> Date: Mon, 25 Sep 2023 13:24:13 +0100 Subject: [PATCH 3/9] [Editorial] Add spaces between element name and bracket in headings (#503) --- html-aam/index.html | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/html-aam/index.html b/html-aam/index.html index cbdd018d3..a4b12b673 100644 --- a/html-aam/index.html +++ b/html-aam/index.html @@ -211,7 +211,7 @@

HTML Element Role Mappings

-

`a`(represents a hyperlink)

+

`a` (represents a hyperlink)

@@ -258,7 +258,7 @@

`a`(represents a hyperlink)

-

`a`(no `href` attribute)

+

`a` (no `href` attribute)

@@ -419,7 +419,7 @@

`address`

-

`area`(represents a hyperlink)

+

`area` (represents a hyperlink)

@@ -466,7 +466,7 @@

`area`(represents a hyperlink)

-

`area`(no `href` attribute)

+

`area` (no `href` attribute)

@@ -2999,7 +2999,7 @@

`img`

-

`img`(`alt`attribute value is an empty string, i.e. `alt=""` or `alt` with no value in the markup)

+

`img` (`alt`attribute value is an empty string, i.e. `alt=""` or `alt` with no value in the markup)

@@ -3098,7 +3098,7 @@

`input` (`type` attribute in the

-

`input`(`type` attribute in the Checkbox state)

+

`input` (`type` attribute in the Checkbox state)

@@ -3291,7 +3291,7 @@

`input` (`type` attribute in theDa

-

`input`(`type` attribute in theLocal Date and Time state)

+

`input` (`type` attribute in theLocal Date and Time state)

@@ -3489,7 +3489,7 @@

`input` (`type` attribute in the

-

`input`(`type` attribute in the Hidden state)

+

`input` (`type` attribute in the Hidden state)

@@ -3538,7 +3538,7 @@

`input`(`type` attribute in the

-

`input`(`type` attribute in the Image Button state)

+

`input` (`type` attribute in the Image Button state)

@@ -3587,7 +3587,7 @@

`input`(`type` attribute in the

-

`input`(`type` attribute in the Month state)

+

`input` (`type` attribute in the Month state)

@@ -3650,7 +3650,7 @@

`input`(`type` attribute in the

-

`input`(`type` attribute in the Number state)

+

`input` (`type` attribute in the Number state)

@@ -3724,7 +3724,7 @@

`input`(`type` attribute in the

-

`input`(`type` attribute in the Password state)

+

`input` (`type` attribute in the Password state)

@@ -3795,7 +3795,7 @@

`input`(`type` attribute in th

-

`input`(`type` attribute in the Radio Button state)

+

`input` (`type` attribute in the Radio Button state)

@@ -3849,7 +3849,7 @@

`input`(`type` attribute in the

-

`input`(`type` attribute in the Range state)

+

`input` (`type` attribute in the Range state)

@@ -3898,7 +3898,7 @@

`input`(`type` attribute in the

-

`input`(`type` attribute in the Reset Button state)

+

`input` (`type` attribute in the Reset Button state)

@@ -3947,7 +3947,7 @@

`input`(`type` attribute in the

- + @@ -4221,7 +4221,7 @@

`input` (`type` a

-

`input`(`type` attribute in the Time state)

+

`input` (`type` attribute in the Time state)

@@ -4292,7 +4292,7 @@

`input`(`type` attribute in the T

-

`input`(`type` attribute in the URL state with no suggestions source element)

+

`input` (`type` attribute in the URL state with no suggestions source element)

@@ -7132,7 +7132,7 @@

`tfoot`

-

`th`(is not a column header, row header, column group header or row group header, and ancestor `table` element has `table` role)

+

`th` (is not a column header, row header, column group header or row group header, and ancestor `table` element has `table` role)

@@ -7187,7 +7187,7 @@

`th`(is not a column header, row header,

-

`th`(is not a column header, row header, column group header or row group header, and ancestor `table` element has `grid` or `treegrid` role)

+

`th` (is not a column header, row header, column group header or row group header, and ancestor `table` element has `grid` or `treegrid` role)

@@ -7243,7 +7243,7 @@

`th`(is not a column header, ro

-

`th`(is a column header or column group header)

+

`th` (is a column header or column group header)

@@ -7291,7 +7291,7 @@

`th`(is a column header or co

-

`th`(is a row header or row group header)

+

`th` (is a row header or row group header)

From 7d4081f4eed0b412bf2cd094115458cc38863851 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Tue, 3 Oct 2023 10:11:06 -0400 Subject: [PATCH 4/9] Addition: clarify when to expose a required element as invalid (#429) Co-authored-by: James Craig --- html-aam/index.html | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/html-aam/index.html b/html-aam/index.html index a4b12b673..4124ad9be 100644 --- a/html-aam/index.html +++ b/html-aam/index.html @@ -13907,7 +13907,18 @@

`required`

@@ -16730,6 +16741,7 @@

Change Log

Substantive changes since moving to the Accessible Rich Internet Applications Working Group (03-Nov-2019)

    +
  • 03-Oct-2023: Clarify when to expose required field as invalid. See GitHub PR 429.
  • 06-Jun-2023: Add computed roles for all HTML elements. See GitHub PR 465.
  • 28-Mar-2023: Add `inert` attribute mapping. See GitHub PR 410.
  • 24-Mar-2023: Add `search` element and its mappings. See GitHub PR 355.
  • From 472a739c6d38159c79cb6f097d8df61ed0f8b597 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Tue, 3 Oct 2023 11:27:51 -0400 Subject: [PATCH 5/9] add mention of image role (#498) Co-authored-by: Valerie Young --- html-aam/index.html | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/html-aam/index.html b/html-aam/index.html index 4124ad9be..26e2787b5 100644 --- a/html-aam/index.html +++ b/html-aam/index.html @@ -2964,7 +2964,8 @@

    `img`

@@ -2995,6 +2996,10 @@

`img`

@@ -3014,6 +3019,7 @@

`img` (`alt`attribute value is

@@ -16741,6 +16747,7 @@

Change Log

Substantive changes since moving to the Accessible Rich Internet Applications Working Group (03-Nov-2019)

    +
  • 03-Oct-2023: Update image mappings to reference the primary synonym roles (`image` and `none`). See GitHub PR 498.
  • 03-Oct-2023: Clarify when to expose required field as invalid. See GitHub PR 429.
  • 06-Jun-2023: Add computed roles for all HTML elements. See GitHub PR 465.
  • 28-Mar-2023: Add `inert` attribute mapping. See GitHub PR 410.
  • From 002d2e7c25351e424a236c87773a474e00e2704d Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Mon, 9 Oct 2023 10:06:03 -0400 Subject: [PATCH 6/9] reduce TOC (#508) --- html-aam/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/html-aam/index.html b/html-aam/index.html index 26e2787b5..e2d42cb58 100644 --- a/html-aam/index.html +++ b/html-aam/index.html @@ -26,7 +26,7 @@ edDraftURI: "https://w3c.github.io/html-aam/", // lcEnd: "2010-08-06", - maxTocLevel: 3, + maxTocLevel: 2, // editors editors: [ From 6aeaa349eca46374ac030c78d39a16b9f1a50b7f Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Mon, 9 Oct 2023 15:22:52 -0400 Subject: [PATCH 7/9] Update: hr within select element (#504) --- html-aam/index.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/html-aam/index.html b/html-aam/index.html index e2d42cb58..9a386e007 100644 --- a/html-aam/index.html +++ b/html-aam/index.html @@ -2792,6 +2792,7 @@

    `hr`

@@ -16747,6 +16748,7 @@

Change Log

Substantive changes since moving to the Accessible Rich Internet Applications Working Group (03-Nov-2019)

    +
  • 09-Oct-2023: Acknowledge use of `hr` element within `select` element. See GitHub PR 504.
  • 03-Oct-2023: Update image mappings to reference the primary synonym roles (`image` and `none`). See GitHub PR 498.
  • 03-Oct-2023: Clarify when to expose required field as invalid. See GitHub PR 429.
  • 06-Jun-2023: Add computed roles for all HTML elements. See GitHub PR 465.
  • From 4a962a97eb6f1bc30cf5f26b04e773609eea8046 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Mon, 16 Oct 2023 10:02:00 -0400 Subject: [PATCH 8/9] reference name/desc (#507) Co-authored-by: James Craig --- html-aam/index.html | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/html-aam/index.html b/html-aam/index.html index 9a386e007..0b8074dd8 100644 --- a/html-aam/index.html +++ b/html-aam/index.html @@ -16308,6 +16308,10 @@

    `wrap`

    Accessible Name and Description Computation

    The terms accessible name and accessible description are properties provided in all accessibility APIs. The name of the properties may differ across APIs but they serve the same function: as a container for a short (name) or longer (description) string of text.

    The text alternative computation is used to generate both the accessible name and accessible description. There are different rules provided for several different types of elements, nodes, and combinations of markup.

    +

    + User Agents notify assistive technology when relevant accessibility information changes, sometimes by destroying and recreating the accessibility object, or sometimes by notifying of changes to the object per the specified + name change event mappings and description change event mappings. +

    Accessible Name Computations By HTML Element

    @@ -16608,7 +16612,6 @@

    Accessible Description Computation

    -
Comments - If the element includes both the `required` attribute and the `aria-required` attribute with a valid value, User Agents MUST expose only the `required` attribute value. +

If the element includes both the `required` attribute and the `aria-required` attribute with a valid value, User Agents MUST expose only the `required` attribute value.

+

+ If an element is required, user agents MUST NOT expose the + element with an intitial invalid state (`aria-invalid="true"`). + The user agent SHOULD expose the invalid state only after 1) a user has purposefully interacted with a required element, + or attempted to submit a form and 2) the element, or elements, do not meet + constraint validation. +

+

+ Until these conditions are met, user agents MUST expose the elements as + (`aria-invalid="false"`). +

[[wai-aria-1.2]] - `img` role + `image` + or `img`role
Comments +

+ ARIA 1.3 adds the `image` role as the preferred synonym to the ARIA 1.0 `img` role. + The expected computed role for named `img` elements is now "image". +

[[wai-aria-1.2]]
Comments +

If an `hr` element is a descendant of a `select` element, user agents MAY expose the element with a role of `none`.