Re: [csswg-drafts] Please define how the various box tree fixups interact

> The code comments suggesting that the computed-value fixups from ruby and grid have to happen in a particular order don't make me very confident in this claim, unfortunately. It's possible those comments are wrong, of course.

Those are in two different categories - ruby fixup (I presume you mean wrapping naked ruby-internal display types) is #2, while Grid blockification is #1. I agree that, previously, it wasn't completely clear that the two categories were strictly divided as they are; that's why we had to add text to Flexbox for it (because we actually discussed it and made an ordering choice, which luckily accorded with the most reasonable-in-hindsight ordering).

> Really? What happens when I have a ruby-text-container parent and a table-cell child? Which anonymous box fixups apply and in what order and why?

ruby-text-container inlinifies its contents - that's a #1 fixup of computed values.  This happens before table-cell tries to wrap itself in anonymous boxes (and in fact prevents that from happening, because it turns into an inline).

> That's ... not what the ruby draft I linked above says, just to be clear. It explicitly says that ruby-triggered inlinization happens after anonymous box generation for tables, and that it affects computed display values.

Yup. :(  The Ruby draft text is old and predates Display, Grid, and other things that made the ordering much clearer.  It needs to be updated. (#1341 on ruby inlinification covers this issue.)

> Yes, that would be the sane thing. The specs explicitly say that's not how it works, at the moment.

Yeah, just the Ruby spec afaik. #1341

> My specific suggestion is to make this stuff very explicit: if anonymous box fixups happen after all computed style fixups, they should clearly say so (and neither one say the opposite).

Afaict, this is precisely what <> says (which is normative) - it gives a precise ordering to things, with computed-values happening before box-generation (and anonymous box generation specifically). Anything missing from there?

GitHub Notification of comment by tabatkins
Please view or discuss this issue at using your GitHub account

Received on Tuesday, 16 May 2017 20:32:13 UTC