W3C home > Mailing lists > Public > www-style@w3.org > June 2010

Re: [css3-text-layout] New editor's draft - margin-before/after/start/end etc.

From: John Daggett <jdaggett@mozilla.com>
Date: Mon, 7 Jun 2010 01:09:53 -0700 (PDT)
To: MURAKAMI Shinyu <murakami@antenna.co.jp>
Cc: Boris Zbarsky <bzbarsky@mit.edu>, www-style list <www-style@w3.org>, Hakon Wium Lie <howcome@opera.com>
Message-ID: <397453462.371564.1275898193591.JavaMail.root@cm-mail03.mozilla.org>
Shinyu Murakami wrote:

> The fallback handling is very important. We want to access to the
> documents (web or ebooks) styled as vertical writing even when we
> cannot use UAs that support vertical writing.

Sure, fallback behavior for any new property is important.  But if
fallback is the main strength of this proposal then there's probably a
simpler way to have graceful fallback for older UAs.

> UAs that supprt vertical writing must suport logical properties. The
> advantages of logical properties for such UAs are obvious. They can
> switch writing modes (horizontal/vertical) by user preference. It's
> easy to write stylesheets suited for both writing modes using only
> logical properties.

I think it's *only* easy when the ideal stylesheet settings for
horizontal and vertical text are swapped versions of each other, in
other words the ideal margin-top and margin-left for horizontal text
are the ideal margin-right and margin-top respectively for vertical
text.  If that's not the case, it's no longer easy, you still need to
define these styles contextually (i.e. have margin/padding/border
settings specific to a given writing mode).  I think making this
assumption is dubious, Japanese horizontal and vertical layout styles
seem very distinct when you look at the details.  And for layouts that
mix horizontal and vertical text I think swapping is going to be more
than a matter of swizzling margins and borders.

Couldn't "user swapping" be thought of in terms of an alternate
stylesheet choice?  This seems far more robust than relying on
changing writing-mode and expecting everything to "just work" (assuming
fallback can be dealt with in other ways).

> To decrease implementation costs for such UAs (i.e., the block-flow
> is always tb), the *-before and the *-after can be simply aliases of
> *-top and *-bottom.

Hmmm, the more I think about it I'm puzzled by the way these logical
and physical properties interact.  The spec says in 5.2 "if the
writing-mode of the element is lr-tb, the computed value of the
‘margin-before’ overrides the ‘margin-top’."  

Are the results different for the two rules below if no other style
rules are defined?

  p {
    writing-mode: lr-tb;
    margin-top: 2em; 

  p {
    writing-mode: lr-tb;
    margin-before: initial;
    margin-top: 2em; 

If the results are different, this seems very un-CSS-like to me.


John Daggett
Received on Monday, 7 June 2010 08:10:28 UTC

This archive was generated by hypermail 2.4.0 : Friday, 25 March 2022 10:07:47 UTC