It seems there are instances where guidelines clash with best practices/workarounds, like the example here. You're damned if you do and damned if you don't! This whole field is still working itself out and there are bound to be these situations. I reckon you simply have to choose a solution and make it consistent across your site. Given the facts I have so far, I'm happy to put trailing spaces on everything. Steve -----Original Message----- From: w3c-wai-ig-request@w3.org [mailto:w3c-wai-ig-request@w3.org] On Behalf Of Jukka Korpela Sent: 24 July 2002 09:19 AM To: 'WAI IG' Subject: RE: Invisible "Skip navigation" link Steve Vosloo wrote: > To cover all bases it seems a good idea to always put a space after a > text description, and usually after some sort of punctuation: > > <a href="#content" title="Skip Navigation. Access key = 2. "> <img > src="hello.gif" alt="Hello world. "> <frame src="banner.html" > title="Frame banner. "> In practice, I tend to agree, at least in situations where alt texts would otherwise "run together". But we have a problem here. The HTML 4 specification says that user agents may ignore leading and trailing spaces in attributes (e.g., treat alt="foo " as equivalent to alt="foo") for "CDATA attributes" (such as title, alt, and many others). This is specified in section 6.2 "SGML basic types" (so you may easily miss it when using the specification as a reference): http://www.w3.org/TR/html4/types.html#h-6.2 And it even says in this context: "Authors should not declare attribute values with leading or trailing white space." (Someone might interpret this "only" as a strong way of saying that authors should not _rely_ on such space being preserved.) XHTML is a different beast: "Whitespace in attribute values is processed according to [XML]." http://www.w3.org/TR/html/#uaconf And this means strict (and fairly complicated) normalization rules: http://www.w3.org/TR/REC-xml#AVNormalize But those rules do not make stripping leading and trailing spaces mandatory for CDATA attributes - though they _do_ require such stripping for other attributes! (And they require compression of multiple spaces, so that alt="foo " is normalized to alt="foo ".) It's difficult to say whether XHTML is intended to _allow_ stripping of leading and trailing spaces in CDATA attributes (as HTML 4 does). Note that if such stripping is allowed, alt=" " can be treated as identical to alt="", which would not be nice at all if e.g. the image is a separator between adjacent words. -- Jukka Korpela, senior adviser TIEKE Finnish Information Society Development Centre http://www.tieke.fi Phone: +358 9 4763 0397 Fax: +358 9 4763 0399Received on Wednesday, 24 July 2002 04:05:39 GMT
This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 19 July 2011 18:14:05 GMT