- From: Anton Prowse <prowse@moonhenge.net>
- Date: Tue, 17 Jan 2012 23:48:32 +0100
- To: WWW Style <www-style@w3.org>
- CC: "Kang-Hao (Kenny) Lu" <kennyluck@csail.mit.edu>
On 17/01/2012 00:15, Kang-Hao (Kenny) Lu wrote: > (12/01/17 6:07), Anton Prowse wrote: >> I'm trying to evaluate this for CSS21 errata; if you wouldn't mind >> assisting me, please could you comment on why you think the behaviour of >> the UAs doesn't match the spec, quoting the part of the spec which you >> think governs this. (You've stated why a particular rule in the spec is >> not relevant to the situation.) > > I believe I am quoting the right rule here but let me try again. First > of all, > >> On Wed, 19 Oct 2011 05:08:54 +0800, Kang-Hao (Kenny) Lu >> <kennyluck@csail.mit.edu> wrote: >>> doesn't apply here because<span> is not a proper descendant of >>> <div>. IE 9, Gecko nightly and Safari (but not Opera) do display the >>> beginning and trailing space and don't match the spec. This applies >>> to nested 'table-row-group' as well. > > s/do/do not/ and also my example listed inline had typo, sorry about > the confusion. Please double check my test to verify that *IE9, FF9, > Safari5.1 and Chrome16 do **not** display the spaces* or, so to speak, > the anonymous inline boxes containing only spaces are dropped. > > Test: > > data:text/html,<!DOCTYPE html><div style="display: table-row; > white-space:pre;"> <span style="display:table-row;">A</span> </div> > > and a better looking one out of a set[1] > > Now, there are four rules in [2] that potentially drop these anonymous > inline boxes. 1.1 and 1.2 are clearly irrelevant, 1.4 doesn't apply > because any of the two inline boxes is not between two sibling. If 1.3, > the part I quoted, doesn't apply either, then the spaces ought not to be > dropped, but IE9, FF9, Safari5.1 and Chrome 16 **do** drop these. > > Going back to the part I quoted, > >>> rule 1.3 >>> >>> # If a child C of a tabular container P is an anonymous inline box >>> # that contains only white space, and its immediately preceding and >>> # following siblings, if any, are proper table descendants of P and >>> # are either 'table-caption' or internal table boxes, then it is >>> # treated as if it had 'display: none'. A box D is a proper table >>> # descendant of A if D can be a descendant of A without causing the >>> # generation of any intervening 'table' or 'inline-table' boxes. > > C is the whitespaces being discussed. > P = A is a table-row (<div>), so a tabular container. > D is a table-row again (<span>). It is not a proper descendant of P. > > So this rule doesn't apply. > > I believe my proposed wording > > (11/10/19 5:08), Kang-Hao (Kenny) Lu wrote: >> | If a child C of a tabular container P is an anonymous inline box >> | that contains only white space, and its immediately preceding and >> | following siblings, if any, are either 'table-caption' or internal >> | table boxes, then it is treated as if it had 'display: none'. > > would match FF10 perfectly, at least in terms of all the cases listed on > [1] though some of the others are not interoperable, but in general, I > believe the less wording the better here. > > > [1] > http://lists.w3.org/Archives/Public/www-archive/2011Oct/att-0016/anonymous-table-and-white-space#e4 > [2] http://www.w3.org/TR/CSS2/tables.html#anonymous-boxes Thanks a lot; I understand the issue now. (I doubt this issue will make it into errata at this point given that we have no feedback from implementers indicating that they do not wish/intend to implement the specified behaviour. I recommend filing bugs with the implementers at this stage.) Cheers, Anton Prowse http://dev.moonhenge.net
Received on Tuesday, 17 January 2012 22:49:03 UTC