-
Notifications
You must be signed in to change notification settings - Fork 126
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update: add mapping tables for customizable select #2369
base: main
Are you sure you want to change the base?
Conversation
Initial draft of select / button as child of a select mappings.
✅ Deploy Preview for wai-aria ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
closes #2382 and is related to #2344 / #2369 This PR adds aria-valuetext as a supported property for the combobox role. the `aria-valuetext` definition is slightly updated to indicate that the attribute can be used on other supported roles. I'm not sure if we want to do any further updates to that section in this PR - or if that really should be handled in a larger PR to resolve #711
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
<p> | ||
In the event that invalid elements are present, but are empty, or are only used as wrapping elements for the valid descendent element's of a select, then user agents SHOULD ignore these elements in the accessibility tree. | ||
</p> | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In our private chat, you provided a few example bits of HTML and what happens for each case. It was really helpful - I wonder if it's ok to include those as non-normative examples here?
html-aam/index.html
Outdated
<p> | ||
The calculated role of the customizable `select` element's popup picker is a `listbox`, by default.</p> | ||
<p> | ||
If authors render invalid elements, in regard to the select element's content model, as descendants of the select element, and those invalid elements result in accessible objects being present as siblings in the accessibility tree to the valid descendent elements of the select, then user agents SHOULD expose the popup picker with the role of a modeless dialog.</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of "if authors render", would it be more clear to say "if authors include" or even "if invalid elements (according to the select element's content model) are placed as descendants of the select element, and..."?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, is "the role of a modeless dialog" a thing? If so, great. But should that be "with the role of dialog"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks @mfreed7 - role of dialog in the modeless state is really what i should have said there.
for the first comment, i said "render" because i would rather flags not be raised / repairs not be made if someone includes an invalid element, but it is set to display: none. but i'm fine with your suggested wording change as well.
html-aam/index.html
Outdated
<p> | ||
In the event invalid elements are present, but are not rendered, then no user agent role repair is necessary.</p> | ||
<p> | ||
In the event that invalid elements are present, but are empty, or are only used as wrapping elements for the valid descendent element's of a select, then user agents SHOULD ignore these elements in the accessibility tree. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if "are empty" is precise? What if they contain only whitespace? For example, you said this:
<main><article></article</main> <!-- ignore these cause they are empty -->
but I'd think maybe this should also be ignored?
<main> <article> </article> </main> <!-- ignore these cause they are "empty" -->
it does not serve as a submit, reset, or generic 'button' type. Rather, | ||
its purpose is directly tied to the rendering of a customized select | ||
serving as the visible indicator/styleable node to serve as the | ||
invoking element for the select's listbox popup. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you want to mention that the UA stylesheet applies interactivity: inert
to this button, to ensure that this comment is true (modulo developer shenanigans)?
Initial draft of select / button as child of a select mappings.
Test, Documentation and Implementation tracking
Once this PR has been reviewed and has consensus from the working group, tests should be written and issues should be opened on browsers. Add N/A and check when not applicable.