- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Sat, 29 May 2010 17:19:21 -0700
- To: "Zack Weinberg" <zweinberg@mozilla.com>
- Cc: HåkonWiumLie <howcome@opera.com>, <www-style@w3.org>
--------------------------------------------------
From: "Zack Weinberg" <zweinberg@mozilla.com>
Sent: Saturday, May 29, 2010 3:31 PM
To: "Andrew Fedoniouk" <news@terrainformatica.com>
Cc: "HåkonWiumLie" <howcome@opera.com>; <www-style@w3.org>
Subject: Re: [css3-text-layout] New editor's draft -
margin-before/after/start/end etc.
> "Andrew Fedoniouk" <news@terrainformatica.com> wrote:
>>
>> I don't think that guessing :rtl or :ltr values by using particular
>> character runs is a good idea at all.
>>
>> E.g. there is a task of presenting file names or URLs in UI.
>> Think about file name in e.g. Hebrew but with ".htm" extension.
>> Usually this is treated as <div dir="ltr"> so overall directionality
>> is still LTR. To be short: :ltr and :rtl are explicitly @dir based.
>>
>> Is this the answer?
>
> Yeah, that's the answer to the question I was asking. Your proposal
> completely ignores what the Unicode bidi algorithm computes, and looks
> only at explicit attributes on HTML elements.
It does not. @dir has nothing with bidi algorithm per se.
In my implementation defined 'dir' DOM attribute just sets values
of :ltr, :rtl, :ttb "state flags" on the element and all its children.
And so called master style sheet ( similar to this one:
http://www.w3.org/TR/CSS21/sample.html ) does the following:
1) sets default value of the 'direction' property in CSS. Like this:
*:rtl
{
direction: rtl;
flow: default;
}
*:ttb
{
direction: ttb;
flow: horizontal;
}
2) defines initial margins/paddings for those elements that use them:
ul:rtl
{
padding-left: 0 ;
padding-right: 20px;
}
And that is all. All other processing is as it is now - nothing changes.
>
> It seems to me that this is almost certainly not what authors want,
> but I have no great experience with multi-language presentation, so I
> could be wrong. My proposal would be ::ltr, ::rtl, ::ttb, etc
> pseudo-elements rather than pseudo-classes; they would match ranges of
> text that were resolved to be drawn in a particular direction,
> regardless of why the bidi algorithm made that decision, and they would
> ignore element boundaries.
If authors want to mix RTL/LTR for example they have to be clear
in their intentions and use these recommendations:
http://www.w3.org/TR/i18n-html-tech-bidi/#ri20030112.214820604
That is already there and used on the Web.
>
> (A difficulty with this is that you have to set things like margin on
> elements. Perhaps we could relax the "pseudo-element only at end"
> rule? Then you could do
>
> ::ltr p ::first-line { padding-left: 2em }
> ::rtl p ::first-line { padding-right: 2em }
>
> for instance. (In a world where padding on first-line actually did
> anything, of course.))
>
I am not sure I understand the purpose of your declaration above.
You want to make some paragraphs to use different paddings in the
same section of a document? Is it real feature request or just hypothesis
that
it might be needed?
--
Andrew Fedoniouk
http://terrainformatica.com
Received on Sunday, 30 May 2010 00:19:54 UTC