- From: fantasai <fantasai.lists@inkedblade.net>
- Date: Sat, 07 Feb 2015 13:09:38 -0500
- To: Boris Zbarsky <bzbarsky@MIT.EDU>, www-style list <www-style@w3.org>
On 07/31/2014 12:05 PM, Boris Zbarsky wrote: > Consider these three testcases: > > 1) abcd<span style="ruby-base-container"> BASE</span> > <span style="ruby-text">TEXT</text> > > 2) abcd<span style="ruby-base-container"> <span>BASE</span></span> > <span style="ruby-text">TEXT</text> > > 3) abcd<span style="ruby-base-container"><span> BASE</span></span> > <span style="ruby-text">TEXT</text> > > Per the current spec text in http://dev.w3.org/csswg/css-ruby/#anony-gen-trim-space > the behavior of testcase #3 is clear, I believe: it renders like so: > > TEXT > abcd BASE > > with a space between "abcd" and "BASE". > > Per the same spec text, the behavior of #2 is also clear, and renders like so: > > TEXT > abcdBASE > > without a space between "abcd" and "BASE". > > The behavior of #1 is not obvious to me from the spec, but a literal reading > would suggest it should render like #2, since the spec talks about "white > space", not "inline boxes contatining only white space". > > Is this actually the desired behavior? Naively, I would have expected all > three of these cases to render like case #3, based on the general principle > that ruby should act like inlines do as much as possible. Sorry, took me awhile to get a clear idea of what to do about this. I think you're right, and I've updated the spec as follows: 1. Moved the leading/trailing trimming rule after the misparented-wrapping rule. 2. Reworded it to: Any <i>intra-ruby white space</i> that is not the sole child of its parent and occurs at the beginning or end of a <i>ruby container</i>, <i>ruby annotation container</i>, or <i>ruby base container</i> is removed, as if it had ''display: none''. Let me know if that makes sense. I think this should also fix sbowen's issue: Susanna Bowen wrote: > Here's another unclear case: > > <ruby><rbc></rbc><rtc></rtc> <rbc></rbc></ruby> > > The spec says the whitespace there is inter-segment whitespace, and is > "effectively a ruby segment of its own." This would suggest treating > the above case like: > > <ruby><rbc></rbc><rtc></rtc><rbc> </rbc><rbc></rbc></ruby> > > (with assumed rtc's for each segment) would be all right. However, once > the white space gets wrapped in an rbc, it becomes both leading and > trailing white space, and is deleted as of step 3 in anonymous ruby box > generation. So the inter-segment white space just becomes a completely > empty segment (instead of a segment containing white space). This > doesn't seem right. Is this what the spec intended? Thanks~ ~fantasai
Received on Saturday, 7 February 2015 19:11:16 UTC