- From: Leif Halvard Silli <xn--mlform-iua@xn--mlform-iua.no>
- Date: Tue, 28 Dec 2010 19:58:22 +0100
- To: Benjamin Hawkes-Lewis <bhawkeslewis@googlemail.com>
- Cc: HTML WG <public-html@w3.org>, Lars Gunther <gunther@keryx.se>
Benjamin Hawkes-Lewis, Tue, 28 Dec 2010 18:19:36 +0000:
> On Tue, Dec 28, 2010 at 12:51 AM, Leif Halvard Silli :
>>> I believe an attribute solution must at the very least focus on the
>>> element to be *included* in the algorithm, rather than on the
>>> ones to be excluded, if it is to have a chance.
>
> Why?
See my reply to Lars.
http://www.w3.org/mid/20101227223340252447.4a7f79cc@xn--mlform-iua.no
In short, the algorithm for <hgroup> works that way.
>> (2) Content attribute - @abbr contains the text for the ToC:
>>
>> <h1 abbr='My terrific idea'>My terrific idea. How I saved
>> HTML5 from being a mess</h1>
>>
>> If @abbr is emtpy, then no text lands in the ToC:
>>
>> <h1>My terrific idea.<h1>
>> <h2 abbr=''>How I saved HTML5 from being a mess</h2>
>
> Since attributes can't mark changes of language or emphasis and since this
> makes the outline text hidden metadata rather than a segment of the visible
> text, I think "hgroup", @toc, and @subtitle are all preferable approaches.
Firstly: Often the generated contents table won't have such markup
- it is suffient to know the heading level.
Secondly: in the second example above, the h1 element contains all
markup. The <h2 abbr=''> would not be used, and neither
would it have been if it had been wrapped inside a hgroup
element.
Thirdly: language? The language would of course be that of the element
where the @abbr is located.
Fourthly: hidden meta data? Can't see that it would be any more
hidden than hgroup - what makes things visible is the
resulting generated table of content.
>> @abbr is taken from HTML4, where it contains a short version of a table
>> cell's content - a very similar function for very similar reasons.
>
> I doubt it will come naturally to authors to think of (or care about)
> outline titles as abbreviations of headers.
Its 'natural-ness' is compareble to <hgroup>. But it is just a name. If
there are convincing reasons for another name, that we can discuss, as
long as the function is kept.
> By contrast, the "subtitle" concept is familiar from the deadtree
> world and a more obvious target for styling.
A subtitle is usually *sub*. Whereas we need to cover structures as
<h2 subtitle>A</h2>
<h1>B</h1>
<h2 subtitle>C</h2>
where the subtitle is a suptitle.
>> Advantages to going for @abbr: a) broadens existing HTML4 feature
>> instead of
>> inventing new concept b) thus builds on existing AT support
>
> Not meaningfully. Just because a couple AT (Jaws, Window-Eyes) use "abbr" on
> "th" doesn't mean they'll also apply it to "hX".
I certainly hope that they won't treat a Table of Content as a Table.
What matters is that the concept is known.
>> c) as long as UAs are interested in implementing the algorithm, authors
>> would not have problems in understanding how it works
>
> I'm not convinced. Authors rarely use "th abbr" correctly. In so far as it's
> used, it's often used for expansions rather than contractions! This
> should give us pause to doubt they would use "hX abbr" correctly.
I have paused to think that the name 'abbr' might not be correct
always. E.g. it might be that an author some times wants a longer title
in the Table of Contents than the title used in the text actually has.
If that's an issue, then renaming it to @toc might be meaningful.
>> d) CSS: h1{content:attr(abbr)} would replace the h1's content with the
>> content of the @attr and it works in Opera + I think in Chrome + nightly
>> Webkit.
>
> Why is this an advantage?
I follow the thinking, which many other also have, that things should
be backward-compatible etc. It also means that it is easy to test how
the short version of a particular heading works. This relates to your
claim about hidden metadata etc. Also h1[abbr] would work.
>> In contrast, the CSS selectability of the different <hgroup> elements
>> cannot be as programmatic, without a new CSS selector.
>
> We need a new CSS selector like ::heading(2) anyway, because of the
> way HTML5 changes the outline algorithm.
How cool. Then we can use CSS in order to reveal the hidden heading
level. Brilliant.
>> e) it is questionable how often it is useful to make the heading differ
>> from its ToC representation. @abbr is a bit more tedious and thus makes
>> sure it doesn't happen too often
>
> Subtitles don't seem that uncommon in ordinary documents.
Not sure what point you made here.
>> f) @abbr is very flexible:
>> * doesn't need to exactly reflect any part of a
>> heading
>
> Hidden metadata is likely to get out of sync.
It is not hidden. Outline supporting UAs as well as CSS, would reveal
it.
>> If the spec insists on the uselessness of td@abbr, the
>> alternative is
>> to introduce hgroup inspired markup - instead of @abbr - for
>> identifying the
>> short version of a table cell.
>
> As someone who's actually used "abbr" to shorten meandering table
> headers for screen reader users, I think a mechanism that did not use
invisible metadata
> would be an improvement. @aria-labelledby might be one option.
The element @aria-labbelledby points to will be treated as an attribute
by the screenreader - and you have described all the problems that are
related to that above.
--
leif halvard silli
Received on Tuesday, 28 December 2010 18:59:02 UTC