Re: example spec text for longdesc

Laura Carlson Thu, 7 Apr 2011 in reply to Geoff Freed:
>> indicator to be a MUST or a SHOULD or a MAY?

>> [....] I would prefer the default indicator to be MAY, and for
>> there to be a user-preference setting for displaying longdesc
>> values when present.

> [...] We certainly could make it a MAY
> with  a user-preference setting for displaying longdesc values when
> present if people think it is a good idea. 

What does "displaying longdesc values" mean? How does "default 
indicator" and "displaying longdesc values" differ?

> Why do you think it should be a MAY Geoff?

A MAY for displaying indicator + user option for turning it on/off 
sounds confusing. 

> How would you suggest rewording the user agent bullet?  Is your idea
> for it to be something like:
> 
> "If a longdesc attribute is present...
> [...] A default indicator may be present. [...]

> What do other people think? Is this a good direction?

If a longdesc indicator is a CSS thing - which seems logical - then CSS 
can be regulated via user-CSS. So default/not-deefault might not need 
to be specced, as such. E.g. Opera lets me disable the default styling 
for links, despite that there is no MAY for such a thing in the spec.

Thus, the spec text could just describe how to present longdesc links, 
and leave it to normal treatment of CSS whether the UA should allow 
regulation (in form of preference or user CSS) of this default CSS. 
This default CSS should be described in HTML5's Rendering section.

But before we can decide about default CSS, we need to know how we want 
the indicator to be:

 * a cursor change is, IMHO, rather harmless - no important need 
   for easy access to user preferences for cursor styles.
 * an 
    img[longdesc*="#"]::marker{content:"\2139" /*info i*/} 
   cannot be disabled via an inline @style="" attribute.
   This could be a small drawback to ::marker.
   But if ::marker comes as part of a certain display property, 
   such as display:list-item - for example,
    [longdesc*="#"]{display:list-item; /*a list-item has a marker*/}
   then it can be disabled via inline style:
    [longdesc*="#"]{display:inline-block;/*::marker goes away*/}
   (Opera supports img{display:list-item}. Firefox too supports it,
    but display antying only when the @src is invalid.)
 *  [longdesc*="#"]{} /*is less dangerous than*/ 
    [longdesc]{}
   as it affects little of current content
 * if the author absolutely is against display for his/her design,
   then he/she can 
    a) provide CSS which disables the default display or 
    b) use a longdesc URL which does not point to a #fragment
       - in that case, the selector 
       [longdesc*="#"]{/*style*/}
       would be without effect.

(The style selector [longdesc*="#"]{} points to possible compromise: By 
default, only @longdesc's which matches that selector (links with a #) 
would display an indicator. But still, even links without # could be 
valid - they just would not have a visual effect. Though I'd prefer if 
only those links which have visual effect would be valid.)

Spec text: you suggested spec to say:

  ]] * User agents should allow users to follow such
       description links. [[

This is identical to what HTML5 says about @cite. [1] This seems more 
important to discuss. Should it say MUST? At any rate, as long as it 
says SHOULD about "follow such description links", then the spec should 
be clear about what allowing users to follow such links implies. 
Namely: it implies offering a hint about its presence to sighted users 
etc. To allow users to follow the link without allowing them to see the 
link (which a MAY would permit), does not make sense: When they allow 
to follow such links, then they must allow users to see it.

So in a summary: No MAY. Rather a conditional MUST. Plus you should 
expand the spec tex with text for HTML5's Rendering section.

[1] http://dev.w3.org/html5/spec/grouping-content#the-blockquote-element
-- 
leif halvard silli

Received on Sunday, 10 April 2011 11:06:00 UTC