Re: [css3-marquee] Comments on Terminology and marquee-direction

I prefer to write this module *with* i18n support, so that it doesn't 
have to change after Text Layout becomes available, but for the Mobile 
Profile it is enough to describe just horizontal text. (And we can't 
write test cases for vertical text anyway right now.) So if you think 
we can't make Marquee abstract enough, we could just limit it to 
horizontal text and add the vertical extensions to a revised 
Recommendation later.

On Wednesday 16 July 2008 18:01, fantasai wrote:
> Bert Bos wrote:
> > I've added "if its 'display' property were set to ''block'' and its
> > content set to text." That's good enough for this module, but it is
> > wrong in general, because it says that 'inline' boxes have a
> > writing mode, too.
>
> (Well, they do. If their writing mode is different from their
> containing block, they become inline-boxes.)

(I'd rather not have the writing mode influence the value of 'display'. 
It's already difficult enough to understand that it is influenced by 
float and position... But that is a discussion for another time.)

>
> >>>> marquee-direction
> >>>> -----------------
> >>>>
> >>>> The table here is only correct if we don't later add the ability
> >>>> to reverse-stack line boxes for horizontal and right-left
> >>>> writing modes or the ability to forward-stack line boxes for
> >>>> left-right writing mode. By reverse-stacking, what I mean is
> >>>> that the lines stack like they do in Mongolian, where if you
> >>>> took the box and turned it 90deg the English would either be
> >>>> laid out stacking top-to-bottom but with each line upside down
> >>>> or with the lines right-side-up but stacking bottom-to-top.
> >>>
> >>> Reverse stacking line boxes in CSS? If we ever add a thing like
> >>> that, we'll have time enough to update the marquee module.
> >>
> >> left-right writing mode reverse-stacks line boxes by default,
> >> because that's how English embedded in Mongolian reads. What will
> >> make your table wrong as-written is adding an option to
> >> forward-stack line boxes in left-right writing mode.
> >
> > OK, so lr is "reverse" only from the point of view of English. That
> > means that rl is reverse from the point of view of Mongolian. Fine.
> >
> > We'll see if it is a good idea to add more properties to a module,
> > Text Layout, that is already so difficult to understand, but as
> > long as the properties don't put the first line box *between* the
> > second and third, there is no problem for the marquee properties:
> >
> >     1  2  3        3  2  1        3  2  1
> >     1  2  3        3  2  1        3  2  1
> >     1  2  3        3  2  1        3  2  1
> >     1  2  3        3  2  1        3  2  1
> >     1  2  3        3  2  1        3  2  1
> >     1  2  3        3  2  1        3  2  1
> >     1  2  3        3  2  1        3  2  1
> >     1  2  3        3  2  1        3  2  1
> >
> >       lr         reverse lr         rl
> >
> > but for the purposes of Marquee, the last two are the same:
> >
> >     "left-right"  "right-left"  "right-left"
> >
> > The marquee animation has to move in one of four directions. If
> > this module doesn't define which direction that is, what does?
> >
> > I can add the bottom-top to the table, for completeness sake, but
> > other than that, the table is complete. No matter how many as yet
> > unspecified properties reverse or restore the line stacking order,
> > the result is always one of these four.
>
> Your diagram is wrong. It's not the direction of stacking that
> changes for reverse lr, but the line boxes are effectively rotated
> 180deg. The order is still left-to-right. So the direction for
> marquee-block doesn't change, but the direction for marquee-line
> does. That is where your table, as written, would be wrong.

The content of the line box has no influence on the marquee direction. 
If a horizontal block has a direction of 'ltr', then the marquee moves 
to the left. It doesn't matter if that block contains English, a 
mixture of English and Hebrew or only Hebrew: if the mark-up says it is 
an ltr paragraph, it moves left.

The order of letters in a vertical line box is certainly more 
complicated to compute than in a horizontal line box, because letters 
do not only have a direction, but certain letters can also be oriented 
in two or three different ways: upright, lying on their left side or 
lying on their right side. But, again, that doesn't affect the marquee 
direction. If you have a lr, ltr block filled with Mongolian, the 
marquee moves up. If you replace a small part of the Mongolian text by 
English with its letters lying on their left side, the marquee still 
goes up. And if you replace *all* the Mongolian, it *still* goes up, 
even though the text is now effectively read from bottom to top.

(B.t.w., why do we need letters rotated to the left? If it is to make 
sideways text as in the background image of W3C 
specifications, 'transform: rotate(90)' or a bit of SVG seem enough for 
that.)



Bert
-- 
  Bert Bos                                ( W 3 C ) http://www.w3.org/
  http://www.w3.org/people/bos                               W3C/ERCIM
  bert@w3.org                             2004 Rt des Lucioles / BP 93
  +33 (0)4 92 38 76 92            06902 Sophia Antipolis Cedex, France

Received on Wednesday, 16 July 2008 18:57:45 UTC