- From: Ian Hickson <ian@hixie.ch>
- Date: Wed, 29 Jul 2009 18:59:46 +0000 (UTC)
- To: Simon Pieters <simonp@opera.com>
- Cc: "public-html@w3.org" <public-html@w3.org>
On Thu, 16 Jul 2009, Simon Pieters wrote: > > Consider the following markup (note missing </a>): > > <ul> > <li><a href="1">foo</li> > </ul> > <ul> > <li><a href="2">bar</a></li> > </ul> > > With an HTML5 parser this will result in 3 extra 'a' elements. Firefox 3.5 > seems to not create them for line breaks, but does create them for tabs and > spaces (why?). Safari matches the spec. Recreating them screws up keyboard > navigation in Firefox. Safari seems to skip links that have 0 width or 0 > height in the tab order. > > I think it would be better to not reopen formatting elements upon seeing a > character token that consists of just whitespace. > > Whether the leading whitespace in " x" in > > <div><a></div> x > > should be put inside the link or not I don't know. Firefox doesn't put it > inside the link (if it was a linebreak instead). I actually studied this quite carefully when originally writing the spec, and originally made whitespace not reopen formatting elements, but it turns out that this causes incompatibilities with IE in a number of cases that are quite hard to explicitly handle separately. I agree that it leads to an unfortunate number of nodes near whitespace. -- Ian Hickson U+1047E )\._.,--....,'``. fL http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,. Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
Received on Wednesday, 29 July 2009 19:00:24 UTC