- From: Richard Schwerdtfeger <schwer@us.ibm.com>
- Date: Wed, 16 Jun 2010 16:08:38 -0500
- To: Ian Hickson <ian@hixie.ch>
- Cc: public-html@w3.org, public-html-request@w3.org
- Message-ID: <OFE18BAAD9.A22DF332-ON86257744.0067AD62-86257744.00742876@us.ibm.com>
Rich Schwerdtfeger CTO Accessibility Software Group public-html-request@w3.org wrote on 06/15/2010 10:19:58 PM: > From: Ian Hickson <ian@hixie.ch> > To: public-html@w3.org > Date: 06/15/2010 10:21 PM > Subject: Change proposal for ISSUE-85 > Sent by: public-html-request@w3.org > > > Updated change proposal including a discussion of links vs buttons in a > new NOTES section. > > ISSUE-85 > ======== > > SUMMARY > > Don't allow people to use ARIA to write inaccessible documents. > > > RATIONALE > > ARIA is useful for authors who need to make new widgets that HTML doesn't > yet support. Buttons are supported by HTML, and therefore there is no > reason for an author to make a link act like a button to ATs. > Ian, Buttons have been around in HTML for years. You seem to be misinformed about what the mainstream development community is doing. It would benefit you to walk down the hall and talk to the gmail people who in fact have used <a role="button"> themselves. I don't know if it is in there today but they have done it. The reality is developers want to create custom UI components and nobody has an all knowing crystal ball to determine all the ways someone wants to create a button. > Making a link act like a button to ATs while leaving it as a link for > non-AT users will lead to non-AT users having a confusing experience, > since the author will think the link is going to appear as a button to > users and may refer to it as such. > Well, like I said I think gmail has a rather large install base. Somehow they have managed. They are not alone by the way. > What's important to remember is that there are more than two kinds of user > agents; there are at least three: > > 1. User agents with scripting, CSS, etc, which can be made to render > elements (like <a>) as other elements (like <button>). > > 2. User agents with ATs, which report the accessibility mapping described > with ARIA, defaulting to the default semantics of the elements. > > 3. User agents without CSS support or without scripting support, and > certainly without ATs, which always use the default semantics of the > elements. > Over 90 percent of the web sites today use script. I think those user agents have a problem. > Some examples of #3 are the text-based browsers, most search engines, and > graphical browsers in which CSS or scripting are disabled. > They are missing out on a lot of content. Many web pages only have script on them. > The only way to keep things consistent amongst all three is to use HTML > elements appropriately, and not override their semantics with ARIA. > So, what you want to do is use accessibility as a vehicle to enforce your vision of sticking to host language semantics. You want to tell someone who is trying to make their web page accessible be an HTML villain - per your WhatWG post: http://krijnhoetmer.nl/irc-logs/whatwg/20100616#l-228 [04:58] <othermaciej> it disallows the concept with a non-machine-checkable requirement, but does not make the syntax an error # [04:58] <othermaciej> however, it does make the syntax <a role="button"> an error # [04:58] <Hixie> right, role="" is a godsend here # [04:58] <othermaciej> with a machine-checkable rule If you remove the ARIA role semantics it means that authors are free to produce inaccessible content when they use script and CSS. I mean you don't suggest it is a failure if you add script and CSS so they will go right along doing it. This is how we got into the situation where we needed ARIA. We failed by not giving the authors the vehicle to convey their intent and put ridiculous requirements that stated you were accessible - only if script and CSS were disabled in your browser. New accessibility regulations remove technology restrictions and now REQUIRE that you convey the semantic information accurately. This applies to WCAG 2 and the 508 refresh. You suggest it would only be an error if the author made it accessible by passing the role attribute. So, what you are doing is sending HTML 5 down a path where the accessibility community states that if you use script your web page will be inaccessible. Government agencies will then be then re-directed not to touch HTML 5 by the advocacy groups and your timing could not be worse as all the government accessibility regulations are being re-written. We can't have that ... So, another solution, to achieving your vision, is for you to remove CSS and Script from HTML 5 and state that authors need to use the host language as is. Then things will work in all the browsers and your text based browsers and search engines can work to their hearts content. That might mean you have a limited audience for HTML 5. It will also create a monumental problem for WhatWG members who have invested so much in using it. So, my position is that I am against idiotic conformance requirements that prevent real people from not using combinations of ARIA, script, and CSS that are accessible. I do not believe in restricting the author in the way you are suggesting. I prefer to give the author the tools they need to do what they want and be accessible. > ARIA is great when you're creating new widgets that aren't in HTML yet: it > allows you to create pages that work in #1 and #2, covering the vast > majority of users, at the cost of #3, who wouldn't be able to experience > the new widget at all anyway. However, when HTML provides the widget you > need, as in the case of a button or a link, and #3 already supports that > widget and therefore there is no need to fake it. In these cases, ARIA is > unsuitable and unnecessary. Validators flag the use of ARIA in these ways, > since there is a net benefit to using appropriate elements instead of ARIA > in those cases. The accessibility task force has looked at the HTML 5 elements and will provide a list of where ARIA should override HTML semantics for the assistive technology and where it will not. In most cases we have prohibited ARIA from being applied to interactive widgets as it would interfere with its operation in terms of what is applied to the AT. Link is commonly overriden to be a button in the real world. Why? because it is keyboard navigable, you can click it, it is scriptable, and it is stylable. Prohibit script and CSS and it is just an anchor - which is what you want but not what developers want. > > > NOTES > > It has been suggested that occurances of the following need role="button" > to be made accessible: > > <a href="#" onclick="action()">...</a> > <a href="javascript:action()">...</a> > > However, both are non-conforming uses of the <a> element in HTML, because > they both use the <a> element for a purpose other than representing a > hyperlink. They are not _syntactically_ non-conforming because they both > have valid use cases in indistinguishable cases: <a href="javascript:"> is > needed to expose bookmarklets to users, and onclick="" is needed for a > wide variety of interactive purposes even on normal links (e.g. making > AJAX applications gracefully degrade). Even a link to href="#" has some > use cases, e.g. to link to the current page to provide the user with a > draggable URL for bookmarking purposes. There's no reason such links > shouldn't be made interactive (e.g. the onclick="" could just trigger a > click animation). So we can't catch this particular case with a validator. > It's unfortunate, but that's what happens when there are valid use cases. > > The role="" attribute gives us the unique opportunity to catch this > particular error as a syntax error. This is a good thing, not a problem. > > In any case, the above examples should not be exposed to ATs as buttons > widgets even if they were valid. They are exposed to users as link > widgets, not button widgets, and thus that is the appropriate AT behaviour > and the appropriate ARIA role. > > > DETAILS > > No change. > > > IMPACT > > POSITIVE EFFECTS > Encourages authors to use HTML as intended, which increases the total > accessibility of the Web. > > NEGATIVE EFFECTS > None. > > CONFORMANCE CLASS CHANGES > None. > > RISKS > None. > > > > -- > Ian Hickson U+1047E )\._.,--....,'``. fL > http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,. > Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.' >
Received on Wednesday, 16 June 2010 21:09:30 UTC