Re: [css-writing-modes] Propose writing-mode: sideways-left

> On 20 Aug 2015, at 16:23, Jonathan Kew <jfkthame@gmail.com> wrote:
> 
> I don't agree that the proposal being considered here would increase authoring model complexity. If anything, I'd say it offers authors a cleaner and more understandable model. We'd have three modes (horizontal-tb, sideways-lr and sideways-rl) that all lay out text in the same way, but with a ±90° rotation in the sideways-* cases. In all three cases, the text is laid out according to the conventions of horizontal writing, even if it is then rotated in its entirety. No question of glyph orientation within the line ever arises in these modes.
> 
> And then there are the two vertical-* modes, which lay out text according to vertical writing-system rules. And for these, the text-orientation property may be used to override the glyph orientation when the default behavior is not suitable.

This is how I see it as well, and it seems quite natural to me that way.


>> but
>> text-orientation has no effect on authors using sideways-rl or
>> sideways-lr.
> 
> Yes, though perhaps it's fairer to say that (for both the current and proposed models), text-orientation is only relevant to vertical-* writing modes. In horizontal writing modes (whether physically horizontal or rotated left/right) it has no effect.

Yes. Or using the jargon, the text-orientation property only applies to elements for which the computed value of the writing-mode property is vertical-*.

> I'd guess that for CJK authors, the use of text-orientation:sideways will be virtually non-existent, as that simply isn't how these languages are written vertically.

text-orientation:sideways should be used by CJK authors to market small piece of foreign language embedded in a their text.

article {
  writing-mode: vertical-rl;
  text-orientation: upright;
}

article q:lang(en) {
  text-orientation: sideways.
}


>> But how this sort of complexity is solved isn't really important. It
>> won't occur frequently in content so we can use implementation
>> experience to come up with better proposals in later levels of the spec.
>> Cluttering up the writing-mode property seems like a mistake to me and
> 
> I don't see the sideways-* (or rotated-*) values as "cluttering up the writing-mode property"; ISTM they're very reasonable ways to express the ways people want to be able to render text.

I think the original design is actually dirtier.

We have 3 things to control with 2 properties:
- block progression direction
- glyph orientation
- baseline orientation / inline progression direction

In the original design, text-orientation:sideways-left not only changes the glyph orientation, it also flips the baseline (and the inline progression direction) 180degrees.

That was needed for that design to work, but opens up the possibility for things we're not actually trying to do: inline changes of baseline orientation.

With the new design, text-orientation, in the writing modes where it applies, only affects glyph orientation, and never does anything to the baseline orientation. It is therefore completely safe to change in the middle of an inline.

The block progressing direction and the orientation of the baseline are tied together, and can only be set at the block level.

I think it is cleaner.

 - Florian

Received on Thursday, 20 August 2015 22:19:35 UTC