Comments (8)
@devarshipant
That's right... I think @accdc was just restating the proposal, not the current status.
from accname.
moved to AAC Calculation spec
#14
from accname.
@DavidMacDonald ok, now I'm confused. You moved this from the ARIA issues (good and thank you). But you closed this one?
from accname.
ooops, had two windows open.... closed the wrong one.
from accname.
• if an html label and an aria-labelledby are used, they will be concatenated in the accname if they are not identical.
• If an aria-error-message and aria-describedby are on a field they will both be concatenated in the accdescription
• if a title attribute offers more information and there is already an accdescription then it will be concatenated if it is not identical.
I see the need for clarifying what to do with title + aria-describedby and possibly aria-errormessage if no other property is meant for this in the mappings, but I think we will be opening a huge can of worms with aria-label and aria-labelledby because this will change everything about how the computation is calculated. It seems like combining title + aria-describedby is a simple positive change, but the label ones I think are going to need a lot more support by browser implementors to consider because this will change everything that they currently have under the hood.
from accname.
Title is like a fallback in the calculation: only use if there is nothing better, where there is an assumption that accessibility specific attributes are meant for assistive technologies and elements like title are aimed at mouse users.
In practice, user agents will not be able to avoid creating huge amounts of redundancy and extra verbage for screen readers just with a simple string compare. I think we could create a huge problem of tons of unwanted and super annoying speech if we were to concatenate. It could be dreadful. I do not support automatic concatenation.
That said, I too do not like the idea of lost information. So, if the title attribute is not easily accessible by AT as a separate entity,, then perhaps we should fix that problem so that AT users always have an easy way to get to the title. We have a tooltip role, but perhaps we should have a tooltip property that is mapped to the title string.
from accname.
if an html label and an aria-labelledby are used, they will be concatenated in the accname if they are not identical.
Correct me -- I think if label and aria-labelledby are present on a control, aria-labelledby wins.
from accname.
Hi,
Just to revisit this since a lot of time has passed and we've discussed this at various times in the WG and have reached what seems to be an agreement about how the mappings should treat this for now.
I wanted to map these things out with a very basic overview.
The algorithms are actually the same between aria-labelledby and aria-describedby, both follow the same mechanism for concatenating multiple ID references and apply the same calculations when parsing embedded content.
The only difference here is which property is being written to. E.G The accessible name is processed and saved as the Name property, then the description is processed and saved in the Description property.
The aria-describedby attribute is always used in reference to setting the Description property, and never applies to setting the Name property.
However, the title attribute applies to both of these properties, with the following exceptions.
- When there is no Name, as previously set with a valid naming mechanism, then the title attribute is set as the Name property when present, and no Description property is set.
- When a valid Name is already set however, then the title attribute is set as the Description property instead.
- When aria-describedby is set, then the referenced computation, if it is not null and does not include only white space characters, is set as the Description property; regardless what the title attribute contains.
- If, after both the accessible Name and Description properties are computed, and if both Name and Description include the same exact value, then both should be merged into the Name alone to prevent redundant duplication by assistive technologies.
This is a very high level summary of what we've discussed. Many of these processes are already covered by the current algorithm, and others will need to be clarified further. This is meant just to illustrate the core relationship between the Name and Description properties, and how they sometimes appear to overlap when applied to the root node (the primary element being processed for its accessible Name and Description).
Does this make sense? Please let me know if I'm missing anything.
from accname.
Related Issues (20)
- AccName forces whitespace joiners between all inline element scenarios HOT 5
- Update old after/before pseudo-element reference link in section 4.3.2 F HOT 1
- Interior whitespace questions in this AccName text node test HOT 12
- Ambiguity in AccName LabelledBy section: "[if] current node is not already 'part of' [sic]…traversal" HOT 19
- Task: verify review feedback from PR 150 made it in
- Ambiguous but normative requirement about hidden nodes is hidden by default in AccName HOT 6
- Clarifying "text node" definition (step 2G) HOT 1
- `name` not allowed on a `li` element HOT 16
- `Summary` not allowed as child of `div`
- Editorial: Remove all the collapsed content in accname
- accname can reference generic with label in a labelledby comp, but is underspecified HOT 3
- ARIA/AccName Conflict: aria-label allowed on generic in a traversal, but labelling a generic is an author error due to "name prohibited" HOT 2
- LabelledBy Recursion is not actually recursive, so it should be renamed. HOT 1
- AccName stable branch is now severely outdated. Is there anything editors recommend keeping? HOT 4
- Consider allowing CSS `inline` display to modify the whitespace character joins in accessible name computation HOT 5
- Links that include header elements omit their descendant content from the link's accessible name HOT 9
- AccName computation: gap in computation HOT 3
- Section 2C could be more clear for collapsed comboboxes HOT 3
- How should labeledby calculation handle whitespace-only content?
- Should the Host Language Label be used if it's empty? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from accname.