[csswg-drafts] [css-ruby] define the height of the content area of ruby bases, ruby annotations (#4935)

frivoal has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-ruby] define the height of the content area of ruby bases, ruby annotations ==
The box model of internal ruby boxes is insufficiently defined.
As far as I can tell, we have the following information:
* Base level contents of a ruby container box (presumably ruby base containers and ruby bases) are said to participate in the same inline formatting context that contains the ruby container itself. (in [2.2.1](https://drafts.csswg.org/css-ruby-1/#formatting-context)
* The base level of a ruby structure is laid out on the line, aligned according to its vertical-align property exactly as if its ruby bases were a regular sequence of inline boxes (in [3](https://drafts.csswg.org/css-ruby-1/#ruby-layout)
* Ruby annotations within a level (within a single ruby container) are aligned to each other as if they were inline boxes participating in the same inline formatting context. (in [3](https://drafts.csswg.org/css-ruby-1/#ruby-layout)
* "In most respects, ruby boxes can be styled similar to inline boxes." (in [3](https://drafts.csswg.org/css-ruby-1/#box-style))

This makes it reasonably clear that ruby container boxes and internal ruby boxes are similar in many ways to inline boxes, and specifically that the way the align vertically is identical to inline boxes (in the regular line for base level boxes, in a virtual line for annotations).

The spec does not actually define what the content area of ruby bases or ruby annotations are.

In the inline axis, this is already tracked at the [in-spec issue 7](https://drafts.csswg.org/css-ruby-1/#issue-cc873b76).

In the block axis, due to the strong similarity with inline boxes, I suspect the intent is that it would be the same as if the ruby base / annotation had been an actual inline box, but the spec doesn't actually state so explicitly. Note that the content area of an inline box is itself currently undefined (see the second note in [css-inline section 3.3.1](https://drafts.csswg.org/css-inline/#leading)), but making sure that these two are identical seems worth stating. Alternatively, if it is meant to be something else (possibly tailored to the predominantly CJK usage of ruby), then that should be stated instead.

This is actually more important here than with regular inlines, because unlike for regular inlines, this affects layout, not just painting: around this content area, comes the padding/border/margin, and around that comes the base containers and annotation containers, and annotation containers are then positioned adjacent to base containers. If we don't know the content area, we don't know where the ruby containers will be placed.

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/4935 using your GitHub account

Received on Friday, 10 April 2020 03:44:47 UTC