- From: Justin James <j_james@mindspring.com>
- Date: Wed, 4 Jun 2008 13:42:28 -0400
- To: "'Leif Halvard Silli'" <lhs@malform.no>, "'Anne van Kesteren'" <annevk@opera.com>
- Cc: <elharo@metalab.unc.edu>, <public-html@w3.org>, <wai-xtech@w3.org>, <www-tag@w3.org>
Leif -
I think you hit the *exact* same1 realization as I did yesterday. This is
the heart of my proposal, which is to let the class (or ID, or whatever the
appropriate CSS definition is) contain the ARIA information.
J.Ja
-----Original Message-----
From: public-html-request@w3.org [mailto:public-html-request@w3.org] On
Behalf Of Leif Halvard Silli
Sent: Wednesday, June 04, 2008 1:03 PM
To: Anne van Kesteren
Cc: elharo@metalab.unc.edu; public-html@w3.org; wai-xtech@w3.org;
www-tag@w3.org
Subject: Re: ARIA as stop-gap (was Re: Next steps for the ARIA syntax
discussion)
Anne van Kesteren 2008-05-30 17.03:
> On Fri, 30 May 2008 16:57:27 +0200, Elliotte Harold ...
>> 1. Accept that HTML is monolithic. Merge ARIA into the core HTML spec,
>> or incorporate it by reference. Make an ARIA attribute
>> programmatically no different than class or style or id. ARIA is just
>> a part of HTML 5, and provides no support for other host languages.
>
> I don't really see why only this is plausible. class, style, and id work
> in HTML, SVG, and MathML. Why can't the same go for ARIA?
How about making it a true statement that aria can be compared to
class, id and style? I.e. *one* aria attribute instead of aria-* ?
The aria-* syntax creates a multitude of attributes. It is as if
one decided to go for style-font="*" instead of style="font:*".
OTOH <element aria="prefix-value" > would work fine with CSS
selectors, and the content of the aria attribute could also be
directly copied to the class attribute, for legacy support --
which seems to be a mayor concern.
If we really want it to be simple for authors to select elements
based the element's aria values, then a *new* selector is needed.
Perhaps it is for the CSS selectors, that we need "aria:" as a
prefix. Or may be a aria(value) selector. See examples below.
I must say that I look with unhappiness at the aria-* attributes.
Where is authors' benefit of using ARIA instead of class= ?
ARIA is supposed to provide "semantic hooks" in addition to the
semantic free "class" and "id" hooks. (Of course, it is low-level
semantics, close to behaviour, we talk about.) Hence implementing
ARIA as a kind of class attribute should make sence. The challenge
only is that we need a syntax for its "predefined class names".
Example - markup:
<h1 id="someHeader>Some header</h1>
<ul role="group" aria="labelledby-someHeader"
class="labelledby-someHeader">
<li id="cb1" class="describedby-someHiddenElement
checked-false" tabindex="0"
role="checkbox"
aria="describedby-someHiddenElement checked-false" >
Lettuce
</li><li></li></ul>
Example - CSS:
li.aria:checked-false {/* = new ARIA CSS selector, alt. 1 */}
li.aria(checked-false){/* = new ARIA CSS selector alt. 2 */}
li.checked-false {/* = old class selector */}
li[aria|="checked"] {/* = old attribute value selector */}
Note that the last selector will select any ARIA attribute with a
value that begins with "checked-*". Also note, of course, that
having a single aria attribute lets you select all elements which
include it -- *[aria]{}. Something which is not possible with
aria-*, since we do not have any *[aria-*]{} selector.
--
leif halvard silli
Received on Wednesday, 4 June 2008 17:43:42 UTC