Slides: https://smhigley.github.io/slides/have-a-notification/workshop/
Code examples: https://github.com/smhigley/notification-workshop
MutationObserver debug function: https://gist.github.com/smhigley/75fa44df8218d62714ea6df5bab353b5
Slides: https://smhigley.github.io/slides/have-a-notification/workshop/
Code examples: https://github.com/smhigley/notification-workshop
MutationObserver debug function: https://gist.github.com/smhigley/75fa44df8218d62714ea6df5bab353b5
This document is intended to provide a set of rough guidelines for aria-actions
implementation in screen reading software. There are no plans for this guidance to go into the ARIA spec or any other normative guidelines; it is only inteded to help clarify how the new aria-actions
attribute is intended to be used as a reference for implementors creating new UI for actions.
The ARIA PR includes the actual proposed spec wording, but here's the gist of how authors and browsers should create actions, including examples:
This gist is intended to pull in all the various ideas around creating an interactive list ARIA pattern, and document a cohesive proposal for moving forward.
The need for an interactive list pattern has been documented in multiple previous issues, including the following:
This is a short overview of the background and decisions that need to be made to map the maxlength
HTML attribute and create an aria-maxlength
ARIA attribute.
Although the HTML maxlength
prop can be used to limit characters in native inputs, it has no accessibility mappings and is not communicated to screen reader users (either up front or when the character limit is reached).
This becomes a pain point when authoring text inputs that have character limits in several ways:
A list of results from testing accordions, but with tabbable, clickable container elements with a group role in addition to the expand/collapse button. The semantics are as follows:
<div role="group" tabindex="0" aria-expanded={expandedState} aria-labelledby="citationId titleId">
<a href="#" id="citationId">1</a> <!-- This is conditionally a in-page citation link, depending on authoring -->
<a href="#" id="titleId">Title of accordion</a> <!-- This is conditionally an external link, depending on authoring -->
<button aria-expanded={expandedState} aria-label="show details">+</button>
Fluent component a11y information is split across three sections, depending on relevance to the user:
The reason for splitting the information into different areas is to present the most concise and relevant information possible in each area of our docs. The component overview page should contain only information that authors need to know in order to implement an accessible version of our components (e.g. "provide a label), while the full accessibility details page provides a thorough description of all accessibility behaviors and choices made on the component.
This is a both an explainer for why a secondary actions proposal is needed, and a draft of the proposed change to the ARIA spec.
Original issue: w3c/aria#1440
Jump straight to the Proposal
Accessibility review checklist, with detailed steps below. Skip any tests or sub-tests that you do not feel comfortable evaluating, and either pair with or hand off the issue to an accessibility SME for any remaining items.
Note: these checks are geared towards catching component-level accessibility issues. They are not comprehensive, and this is not the correct checklist for evaluating page- or app-level accessibility.