W3C home > Mailing lists > Public > www-style@w3.org > July 2015

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

From: Richard Ishida <ishida@w3.org>
Date: Mon, 13 Jul 2015 09:57:04 +0100
Message-ID: <55A37D60.50209@w3.org>
To: Koji Ishii <kojiishi@gmail.com>
CC: fantasai <fantasai.lists@inkedblade.net>, "www-style@w3.org" <www-style@w3.org>
On 12/07/2015 06:57, Koji Ishii wrote:
> On Sat, Jul 11, 2015 at 12:21 AM, Richard Ishida <ishida@w3.org
> <mailto:ishida@w3.org>> wrote:
>     [snip]
>     i have attached an image that shows various numbered use cases.
>     Fantasai, Koji, Florian, could you each indicate how you think CSS
>     properties and values should be used to achieve each of the use cases?
> 1, 2, 5: sideways-lr, non-CJKM
> 3, 6: vertical-rl, CJK
> 4, 7, 8: sideways-rl, non-CJKM
> vertical-lr (Mongolian) is not included in these 8 cases. They look
> similar to 3, 6 but lines flow from left to right.

this misses a key thing i was looking for, which is where the line start 
is, and how the text is aligned.

from the rest of your email, i conclude that the following applies. Is 
this correct?

[1,2] writing-mode: sideways-lr;
[5]   writing-mode: sideways-lr; text-align: end;
[4]   writing-mode: sideways-rl;
[7,8] writing-mode: sideways-rl; text-align: end;
[6]   writing-mode: vertical-rl;

for [3] see below

>     what's the difference between sideways-rl and vertical-rl?
>     Presumably none for horizontal latin text.
> Almost none. but two I would list are:
> 1. Ambiguous (unified) characters behave as CJKM for "vertical" and as
> non-CJKM for "sideways".
> 2. There are some subtle typographic differences between Latin
> characters in CJK vertical and rotated Latin. They're distinguished
> between the two values.
>     Or does this rotate all CJKM characters 90º clockwise?
> Yes for "sideways", no for "vertical". You could consider "sideways"
> being no more than rotation, while "vertical" involves CJKM vertical
> flow typographic conventions such as their native characters appear in
> upright.
> I think you're trying to understand in a complex way. Is it easier to
> understand if you consider "sideways-rl" is a clock-wise rotation, and
> "sideways-lr" is a counter-clock-wise rotation? It's what they do.

i think the key to clarity here is to indicate *what* it's a clockwise 
rotation of: characters or lines?  As i understand it, it a clockwise 
rotation of lines (or sometimes parts of a line).

that makes sense. So effectively, writing-mode determines the 
orientation of lines, with the caveat that if you use vertical-xx, it 
also factors in an upright rotation of certain characters so that CJK 
look upright and Mongolian looks right too.

that seems ok to me.


> I think opposite. The important distinction is whether you want to
> rotate "characters" or "lines". With the proposal, if you want to rotate
> "lines", writing-mode is the property, it now allows both 90 and 270. If
> you want to rotate "characters" without affecting lines at all,
> text-orientation is the property. The current sideways-left and
> sideways-right are not consistent in this regard.

> Yeah, that's where this proposal improves. Now you can use the same
> property to rotate clock-wise or counter-clock-wise, just different
> values. Non-CJK authors have no question in character orientation once
> line was rotated, so all they need to learn is the writing-mode property.
>     fwiw, here's an example of Latin text running up the page, however
>     it is only in a loose association with the vertical-rl orientation
>     of the chinese and japanese alongside it. I can count on one hand
>     the other examples i've seen of text running in this direction. I
>     assume that if this were translated into Arabic, that would run down
>     the page but with the top of the glyphs to the left.
>     https://www.flickr.com/photos/ishida/19391039009/
> This example in the current spec is:
>    writing-mode: vertical-rl; /* rotate lines (along with characters) 90
> degree */
>    text-orientation: sideways-left; /* then rotate lines (along with
> characters) 180 degree */
> With this proposal:
>    writing-mode: sideways-lr; /* rotate liens (along with characters)
> 270 degree */

the new proposal seems more straightforward to me.

[Actually, the setting of the top of the three boxes containing text is 
set at a regular offset from one line to the next, which makes me think 
this is 3 separate boxes with text aligned towards the top of the page. 
So with this proposal, i think you'd have to have
  writing-mode: sideways-lr; text-align: end;
set on the box containing Latin.]

if, however, the text was embedded inline and ran up the page - which is 
what [3] in the original image should have shown, if i hadn't forgotten 
to fix it, and what [3] now shows in the attached, updated image – i'm 
assuming that the current proposal would require you to do something 
like add a span around the latin text and apply CSS per

span.latin { writing-modes: sideways-rl; }

assuming that that's correct, if we add span.latin { margin-start: 10px; 
}, does the space open up above or below the latin text? If, however, we 
add span.latin { ruby-align: start; } and the rt says 'a', i assume that 
the 'a' would appear over 'W' in W3C.  Is that right?


(image/png attachment: vertical-test-cases-2.png)

Received on Monday, 13 July 2015 08:57:18 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:52:18 UTC