diff --git a/index.html b/index.html index 482f741c3..436350c7e 100644 --- a/index.html +++ b/index.html @@ -10582,7 +10582,7 @@

Definitions of States and Properties (all aria-* attributes)

When using aria-braillelabel, authors SHOULD also ensure that:

  1. The element to which aria-braillelabel is applied has a valid accessible name.
  2. -
  3. The value of aria-braillelabel is not empty or does not contain only whitespace characters.
  4. +
  5. The value of aria-braillelabel is not empty or does not contain only [=ascii whitespace|whitespace=] characters.
  6. The value of aria-braillelabel does not contain any characters in Unicode Braille Patterns or consists of only characters in Unicode Braille Patterns; the value does not only contain Braille Pattern dots-0.
  7. The value of aria-braillelabel is not identical to the element's accessible name.
@@ -10629,11 +10629,12 @@

Definitions of States and Properties (all aria-* attributes)

Defines a human-readable, author-localized abbreviated description for the role of an element, which is intended to be converted into Braille. See related aria-roledescription.

Some assistive technologies, such as screen readers, present the role of an element as part of the user experience. Such assistive technologies typically localize the name of the role, and they may customize it as well. Users of these assistive technologies depend on the presentation of the role name, such as "region," "button," or "slider," for an understanding of the purpose of the element and, if it is a widget, how to interact with it.

The aria-brailleroledescription property gives authors the ability to override how assistive technologies localize and express the name of a role in Braille. Thus inappropriately using aria-brailleroledescription may inhibit users' ability to understand or interact with an element on braille interfaces. Authors SHOULD limit use of aria-brailleroledescription to clarifying the purpose of non-interactive container roles like group or region, or to providing a more specific description of a widget in a braille context.

-

Authors MUST NOT use aria-brailleroledescription without providing aria-roledescription. In general, aria-brailleroledescription should only be used in rare cases when a aria-roledescription is excessively verbose when rendered in Braille.

-

When using aria-brailleroledescription, authors SHOULD also ensure that:

+

Authors MUST NOT use aria-brailleroledescription without providing aria-roledescription. Additionally, as with aria-roledescription, authors MUST NOT specify aria-brailleroledescription on an element which has an explicit or implicit WAI-ARIA role where aria-brailleroledescription is prohibited.

+

In general, aria-brailleroledescription is only meant to be used in rare cases when a aria-roledescription is excessively verbose when rendered in Braille.

+

When using aria-brailleroledescription, authors SHOULD also ensure that:

  1. The element to which aria-brailleroledescription is applied has a valid WAI-ARIA role or has an implicit WAI-ARIA role semantic.
  2. -
  3. The value of aria-brailleroledescription is not empty or does not contain only whitespace characters.
  4. +
  5. The value of aria-brailleroledescription is not empty or does not contain only [=ascii whitespace|whitespace=] characters.
  6. The value of aria-brailleroledescription does not contain any characters in Unicode Braille Patterns or consists of only characters in Unicode Braille Patterns; the value does not only contain Braille Pattern dots-0.
  7. The value of aria-brailleroledescription should not be identical to the element's WAI-ARIA aria-roledescription, WAI-ARIA role or implicit WAI-ARIA role semantic.
@@ -10641,7 +10642,7 @@

Definitions of States and Properties (all aria-* attributes)

User agents MUST NOT expose the aria-brailleroledescription property if any of the following conditions exist:

    -
  1. The value of aria-brailleroledescription is empty or contains only whitespace characters or the empty Braille pattern: dots-0 (U+2800).
  2. +
  3. The value of aria-brailleroledescription is empty or contains only whitespace characters, which includes standard [=ascii whitespace|whitespace=] and the empty Braille pattern: dots-0 (U+2800).
  4. The element to which aria-brailleroledescription is applied has an explicit or implicit WAI-ARIA role where aria-brailleroledescription is prohibited.
  5. The element to which aria-brailleroledescription is applied does not have a valid WAI-ARIA aria-roledescription.
@@ -11932,7 +11933,7 @@

Definitions of States and Properties (all aria-* attributes)

Defines a string value that labels the current element. See related aria-labelledby.

The purpose of aria-label is the same as that of aria-labelledby. It provides the user with a recognizable name of the object. The most common accessibility API mapping for a label is the accessible name property.

-

If the label text is available in the DOM (i.e. typically visible text content), authors SHOULD use aria-labelledby and SHOULD NOT use aria-label. There may be instances where the name of an element cannot be determined programmatically from the DOM, and there are cases where referencing DOM content is not the desired user experience. Most host languages provide an attribute that could be used to name the element (e.g., the title attribute in [[HTML]]), yet this could present a browser tooltip. In the cases where DOM content or a tooltip is undesirable, authors MAY set the accessible name of the element using aria-label. As required by the accessible name and description computation, user agents give precedence to aria-labelledby over aria-label when computing the accessible name property.

+

Most host languages provide an attribute that could be used to name the element (e.g., the title attribute in [[HTML]]), yet this could present a browser tooltip. In the cases where DOM content or a tooltip is undesirable, authors MAY set the accessible name of the element using aria-label, if the element does not prohibit use of the attribute. If the label text is available in the DOM (i.e. typically visible text content), authors SHOULD use aria-labelledby and SHOULD NOT use aria-label. There may be instances where the name of an element cannot be determined programmatically from the DOM, and there are cases where referencing DOM content is not the desired user experience. Authors MUST NOT specify aria-label on an element which has an explicit or implicit WAI-ARIA role where aria-label is prohibited. As required by the accessible name and description computation, user agents give precedence to aria-labelledby over aria-label when computing the accessible name property.

@@ -11967,7 +11968,7 @@

Definitions of States and Properties (all aria-* attributes)

Identifies the element (or elements) that labels the current element. See related aria-label and aria-describedby.

The purpose of aria-labelledby is the same as that of aria-label. It provides the user with a recognizable name of the object. The most common accessibility API mapping for a label is the accessible name property.

-

If the interface is such that it is not possible to have a visible label on the screen, authors SHOULD use aria-label and SHOULD NOT use aria-labelledby. As required by the accessible name and description computation, user agents give precedence to aria-labelledby over aria-label when computing the accessible name property.

+

If the interface is such that it is not possible to have a visible label on the screen, authors SHOULD use aria-label and SHOULD NOT use aria-labelledby. Authors MUST NOT specify aria-labelledby on an element which has an explicit or implicit WAI-ARIA role where aria-labelledby is prohibited. As required by the accessible name and description computation, user agents give precedence to aria-labelledby over aria-label when computing the accessible name property.

The aria-labelledby attribute is similar to aria-describedby in that both reference other elements to calculate a text alternative (an accessible name, and description, respectively). While a concise accessible name is preferable, a description can either be concise, or provide more verbose information.

The expected spelling of this property in U.S. English is "labeledby." However, the accessibility API features to which this property is mapped have established the "labelledby" spelling. This property is spelled that way to match the convention and minimize the difficulty for developers.

@@ -12704,13 +12705,14 @@

Definitions of States and Properties (all aria-* attributes)

When using aria-roledescription, authors SHOULD also ensure that:

  1. The element to which aria-roledescription is applied has a valid WAI-ARIA role or has an implicit WAI-ARIA role semantic.
  2. -
  3. The value of aria-roledescription is not empty or does not contain only whitespace characters.
  4. +
  5. The value of aria-roledescription is not empty or does not contain only [=ascii whitespace|whitespace=] characters.

Depending on the assistive technology, user verbosity settings, or other factors, certain elements' role descriptions might not be conveyed. If specifying aria-roledescription on such elements, then the custom role descriptions may also not be conveyed by these assistive technologies.

+

Additionally, authors MUST NOT specify aria-roledescription on an element which has an explicit or implicit WAI-ARIA role where aria-roledescription is prohibited.

User agents MUST NOT expose the aria-roledescription property if any of the following conditions exist:

  1. The element to which aria-roledescription is applied has an explicit or implicit WAI-ARIA role where aria-roledescription is prohibited.
  2. -
  3. The value of aria-roledescription is empty or contains only whitespace characters.
  4. +
  5. The value of aria-roledescription is undefined or the empty string.

Assistive technologies SHOULD use the value of aria-roledescription when presenting the role of an element, but SHOULD NOT change other functionality based on the role of an element that has a value for aria-roledescription. For example, an assistive technology that provides functions for navigating to the next region or button SHOULD allow those functions to navigate to regions and buttons that have an aria-roledescription.

The following two examples show the use of aria-roledescription to indicate that a non-interactive container is a "slide" in a web-based presentation application.

@@ -13506,7 +13508,6 @@

States and Properties

  • When the state or property has only one ID reference that cannot be resolved, treat as if the state or property is not present.
  • When the state or property has a list of ID references, ignore any that can't be resolved. If none in the list can be resolved, treat as if the state or property is not present.
  • -

    User Agents MUST NOT expose an ARIA attribute to the platform accessibility API when the element's computed role prohibits use of the attribute.

    If a required WAI-ARIA attribute for a given role is missing, user agents SHOULD process the attribute as if the values given in the following table were provided.

    Characteristics:
    Fallback values for missing required attributes