-
Notifications
You must be signed in to change notification settings - Fork 27
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
Mappings for body and html don't seem to match reality #330
Comments
Related aside: In my opening report, I said "essentially exposing |
thanks @joanmarie looking over this today and performing my own testing, I think what you're saying here makes sense. Right now, while If we are in agreement, I can make these changes today, and also address the html-aria issue you raised. |
@scottaohara For the most part I agree with you. But look at my test case in the OR. Specifically: (Yes, I came across this issue when my local implementation of name-prohibited broke So.... Maybe the element-to-ARIA-role thing needs WG discussion at least in the case of |
True, but authors naming the Testing a body with aria label, only VoiceOver (webkit and chromium) on macOS and Narrator (tested with Edge on Windows) will announce it. iOS VO, Android TalkBack (firefox/chromium), macOS (VO+firefox), JAWS/NVDA with chromium/firefox - they all ignore the aria-label on the body, so this really isn't something that anyone should be banking on working presently - nor do i see the point of it for the future. |
There are many things which people shouldn't bank on. But given how much fun and surprises and lack of agreement name-prohibition has unexpected led to.... Should we triple check that we all (WG members, user agent vendors, etc.) agree that |
I wonder if it has anything to do with the mappings from the user agents. In the above cases, the
On Firefox, on the other hand, the In Chromium on Windows (and also Linux), the Mind you, I'm not saying that this means that |
Yup that all makes sense. I personally don’t see the point in allowing body to be named. But interested in if anyone can think of a use case ... well aside from the dreaded |
As mentioned in the call, I don't mind if there is an author MUST NOT, but I don't think there is a strong enough reason to add a "User Agents MUST NOT expose it" when it's provided. What about the following?
|
I think this was answered in our discussion during a call, but I don't remember the answer: Does ARIA place a requirement on browsers to not expose names of elements that prohibit naming? If not, then is exposing the name optional? When naming is prohibited for authors, it would seem quite inconsistent to require the browser to calculate a name. If browsers MUST not expose a name, then the spec should be consistent, i.e., body should map to generic regardless of presence of aria-label. If browser name calculation is optional for elements where naming is prohibited, then the mapping should reflect that and say something like generic except if named. If named, generic or optionally group. |
Per ARIA WG call today, we are going to go with body mapped to generic. authors should receive an error if they name the body with aria-label...but UAs can error correct to expose a name here, if they so choose. |
`html` should have mapped to `document` - this is now corrected and the table now indicates to refer to the WAI-ARIA mapping for the document role. `body` no longer maps to `document` - which matches reality. `body` now maps to `role=generic`. further updates may be needed here for instances where authors incorrectly name a generic / provide the body with elements important to accessibility - e.g., `contenteditable`. closes #330
* blockquote update map to core aam blockquote role * fix mapping for body/html `html` should have mapped to `document` - this is now corrected and the table now indicates to refer to the WAI-ARIA mapping for the document role. `body` no longer maps to `document` - which matches reality. `body` now maps to `role=generic`. further updates may be needed here for instances where authors incorrectly name a generic / provide the body with elements important to accessibility - e.g., `contenteditable`. closes #330 * update section 3.4 introduction list * remove bullet about “?” cells. these have all been removed. * update list item about `aria-roledescription` and mention that UAs must not expose the attribute if used on an implicit `generic` element. * update aria 1.1 to 1.2 links * update json data for specs * update hgroup mapping to match reality closes #331 * point to aria 1.2 roles this PR updates the following elements to point to their implicit ARIA roles defined in core aam * caption * code * del * em * ins * meter * paragraph * strong * sub * sup * time * start marking generics starts on issue #346, indicate some of the elements that will map to, or under certain conditions map to `generic` * autonomous custom elements * div * form without accessible name * form associated custom elements * section without accessible name * typo fixed * Update index.html Co-authored-by: Steve Faulkner <[email protected]>
Load the following test case in macOS, Windows, or Linux:
And then load the accessible inspector of your choice for that platform to compare the tree with the mappings for
body
(which are documenty) andhtml
(not mapped).TL;DR: Everyone is essentially exposing
html
as the document (i.e. it's mapped). Most are exposingbody
as a generic child thereof -- except Firefox which is pruning it (causing the author'saria-label
to be discarded).Linux results
Chrome
Firefox
Epiphany (WebKitGtk)
Windows results
Chrome
Firefox
Edge
Mac results
Safari and Chrome
The text was updated successfully, but these errors were encountered: