W3C home > Mailing lists > Public > www-style@w3.org > May 2011

Re: [css3-writing-modes] Request to publish Last Call Working Draft

From: Aharon (Vladimir) Lanin <aharon@google.com>
Date: Fri, 27 May 2011 12:23:55 +0300
Message-ID: <BANLkTi=7B06rEth8pL83U5mD6GnLF7HWyA@mail.gmail.com>
To: Alan Gresley <alan@css-class.com>
Cc: fantasai <fantasai.lists@inkedblade.net>, "www-style@w3.org" <www-style@w3.org>, w3c-css-wg <w3c-css-wg@w3.org>
What I meant re a conflict between the logical and physical properties is
this:

.foo {
  padding-start: 10px;
  padding-left: 20px;
}

.bar {
  padding-left:20px;
  padding-start: 10px;
}

My guess is that with these classes, a <span class="foo" dir="rtl"> or a
<span class="bar" dir="rtl"> should have a 10px right padding and a 20px
left padding.
On the other hand, with dir="ltr", neither will have a right padding. The
question is what the left padding should be. One approach would be to say
that either the physical or the logical property always wins, in which case
both spans will have the same left padding. Another would be to say that the
"last specified" would win as usual, in which case the left padding will be
20px on the foo span and 10px on the bar span. I was not sure that this is
really an option, though, because of the implementation difficulty.

On Fri, May 27, 2011 at 5:38 AM, Alan Gresley <alan@css-class.com> wrote:

> On 26/05/2011 3:19 PM, Aharon (Vladimir) Lanin wrote:
>
>> Are the *-start and *-end properties, as implemented in Firefox and
>> WebKit,
>> relative to the element's direction or the element's parent's direction?
>>
>
>
> The parent's or ancestor's direction that establishes a new level of bidi
> embedding. These test all set the *-start and *-end values on the parent or
> grandparent.
>
>
>
>  Please note that the same arguments that fantasai brought up for the
>> "CSS2.1/CSS3WM [issue] on nested bidi and breaking inlines across lines" (
>> http://lists.w3.org/Archives/Public/www-style/2011May/0186.html) applies
>> to
>> these properties, in favor of using the element's parent's direction.
>>
>
>
> Correct. I didn't mention that since Fantasai stated that feedback was to
> exclude that issue. What Fantasai noted about 'breaking inlines across
> lines' is absolutely correct but I do expect that if all implementations
> handled this the same as IE8, IE9 and IE10 does where margins and borders
> are visual and not logical and are based on the parent's or ancestor's
> direction, then there would be no problem with using start and end values
> for logical values.
>
> http://css-class.com/test/css/bidi/direction-bidi-ordering-inline.htm
>
>
>
>  Also, do Firefox and Webkit handle the conflict between these values and
>> *-left and *-right in the same manner?
>>
>
>
> For the test with direction of parent or ancestor, both Firefox and WebKit
> handles start and end values correctly (excluding Safari that has some bug
> that Chrome doesn't). I don't understand what you mean by a conflict since I
> see no conflict. Left and right values are visual and start and end values
> are logical.
>
>
>
>  I.e., do they both keep them as
>> separate properties until they have to be actually used for some element,
>> and then have the same policy re whether it is the logical or the physical
>> property that wins?
>>
>> Aharon
>>
>
>
> Cascadence is the things that allow something to win. Something like this
> but using text-align.
>
> http://css-class.com/test/css/bidi/start-and-end-values-text-align2.htm
>
>
> With this CSS.
>
>
> [dir="rtl"] .align-start {
>        text-align: right;
>        text-align: start;
> }
>
> [dir="rtl"] .align-end {
>        text-align: left;
>        text-align: end;
> }
>
> [dir="ltr"] .align-start {
>        text-align: left;
>        text-align: start;
> }
>
> [dir="ltr"] .align-end {
>  text-align: right;
>  text-align: end;
>
> }
>
>
>
> --
> Alan Gresley
> http://css-3d.org/
> http://css-class.com/
>
Received on Friday, 27 May 2011 09:24:41 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:40 GMT