- From: Jukka K. Korpela <jkorpela@cs.tut.fi>
- Date: Tue, 2 Nov 2004 10:50:46 +0200 (EET)
- To: HTML List <www-html@w3.org>
On Tue, 2 Nov 2004, Lachlan Hunt wrote: > That's why the XHTML 2 draft states [1] > > # An a element defines an anchor. Since hypertext attributes such as > # href may be applied to any element, this element is not strictly > # necessary, being equivalent to a span, but has been retained to allow > # the expression of explicit links. Such an idea results typically from a theoretical analysis that aims at simplicility and orthogonality and whatever. So I could well have invented it myself, but since I didn't, I can see that it's all wrong. What happened to the usability and accessibility principle that a link text should be short and concise, yet informative, and work reasonably out-of-context too, e.g. in a list of all links? What will e.g. speech browsers do in links reading mode when a link is five paragraphs or a hundred-lines table or something really big? Hypertext should be more than text, not less. A link should be a word, abbreviation, or a short phrase, often name-like (such as the title of the linked resource). Restricting it to text level content and using specific markup element for a link is _good_. Allowing anything to be a link is _not_ progress; quite the contrary. If XHTML 2 will intentionally break any compatibility with old versions of HTML, it could just as well have a logical name for a linking element, such as... let me think... <link>? Or maybe <ref> > I personally don't think that's a very good reason to keep it, but there > is little harm in doing so. Except continued confusion, of course. But we might ask whether it's really the <span> element that is redundant. Actually some people have figured out that in practical HTML authoring at present, you can use <a> (without href or name attributes) instead of <span>. If you later decide to make it a link, you can just add the href attribute. Consider a typical case: adding markup just to carry an attribute, like <a lang="fi">Jukka K. Korpela</a>. Works just as fine as <span>. And if you like, you can then simply add a href attribute without changing the element's name. (If you do this, you need to be careful about But that's a good principle anyway.) The word "span" doesn't really mean anything. The string "a" would be just as understandable, wouldn't it? -- Jukka "Yucca" Korpela, http://www.cs.tut.fi/~jkorpela/
Received on Tuesday, 2 November 2004 08:51:21 UTC