- From: Leif Halvard Silli <lhs@malform.no>
- Date: Thu, 16 Jul 2009 05:02:30 +0200
- To: HTMLWG <public-html@w3.org>
- CC: scampa.giovanni@gmail.com
<a coords=""> was apparently dropped in 2005 [1]. Now, a bug report has been filed to get <a coords=""> added to HTML 5 again. [2] A. The debate in the WHATwg group in 2005 acknowledged that both Opera and Firefox supports <a coords=""> and that it, thus, meets the CR criteria. [3] But the argument against keeping <a coords=""> was lack of support in IE6 and little use as well (due to IE6, we may assume). However, a few things happened since April 2005. E.g. both IE7 and IE8 have been released. B. IE8 has got proper support for <object data="image">. Thus, with IE8, Anne in theory has a reason to support <a coords="">, so he can do this[4]: <object data="foo" usemap="#foo"> <map id="foo"> <a coords="..." href="...">...</a> </map></object> (Safari doesn't seem to support image maps with the <object>, though ... - another of its many OBJECT anomalies ...) C. Unfortunately, IE8 still does not support <a coords="">. So, for IE8 support, one must still use the workaround that Ian proposed for IE6 (and which works even better with IE8!) - namely, to use both elements simultaneously: [5] <map id="foo"> <area coords="..." href="..."><a href="...">...</a> </map> D. There is a problem with this workaround, though: While the exact construct above works fine, it actually stops working in Firefox if you place the <area> /after/ the <a> element. This is a bug/fact/issue that is difficult to communicate or understand. So this doesn't work in Firefox: <map id="foo"> <a href="...">...</a><area coords="..." href="..."> </map> (Firefox' problem seems to be that it sees <area> as child of <a>, even if it is its sibling. We can take advantage of this fact and actually _permit_ <area> as child of <a coords=""> - see below.) E. Another problem with the same workaround is that it doesn't allow you to drop the @alt attribute of the <area> element - an empty or non-empty @alt attribute must be offered in order to be able to produce valid HTML code. F. PROPOSAL If we allow <area> as child of <a coords="">, <map id="foo"> <a coords="..." href="..."><area coords="..." href="..."> ...</a> </map> then we have a solution which is - Firefox compatible. - easier to communicate - in line with the HTML 5 pattern to allow <a> around almost any element - a logical solution to the @alt attribute problem: when <area> is kept inside <a coords="">, then one should be permitted to drop the @alt attribute. - a transition construct towards the goal that _all_ UAs support <a coords=""> - any UA that understand <a coords=""> should ignore the nested <area> element (as both Opera and Firefox do). - "a better design because it has automatic full fallback" - without the use of @alt attribute. [6] [1] http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2005-April/003508.html [2] http://www.w3.org/Bugs/Public/show_bug.cgi?id=7076 [3] http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2005-April/003513.html [4] http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2005-April/003510.html [5] http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2005-April/003514.html [6] http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2005-April/003522.html -- leif halvard silli
Received on Thursday, 16 July 2009 03:03:11 UTC