On Wednesday 01 November 2006 22:58, Paul Nelson (ATC) wrote:
> Richard,
>
> Your assertion that "rlo" and "lro" should not set the text direction
> is flawed because you are putting two properties together.
> 'direction' sets initial block level text-align. The 'unicode-bidi'
> is a second property that does not set the block direction.
> ****Please do not override the 'dir' property to contain two
> properties**** It only causes confusion.
Just another small clarification on the 'text-align' property:
The CSS2 specification is rather brief on how a block's 'direction'
property influences the default alignment, but the right interpretation
is that the initial value of the property is neither 'left' nor
'right', but another, nameless value, which acts as 'left' or 'right'
depending on the 'direction' property.
The WG already decided some time ago to give this value an explicit name
in CSS3, viz. 'start'[1] (borrowed from XSL-FO) and now also decided to
improve the wording in CSS2 to make it unambiguous that the initial
value is indeed neither 'left' nor 'right'. (The CSS3 Text Module is
already clear on that point.)
This 'start' value exists basically to ensure that documents in a single
script automatically align to the correct side in the absence of any
CSS rules. It may indeed lead to surprising results in documents with
mixed scripts, because the value is inherited, and thus a nested block
element may unexpectedly be aligned differently from its parent, just
because it has a different 'direction' property. (Although I've also
heard claims that some designers *want* to justify blockquotes
differently based on their script.)
It may be that having 'start' as the initial value of 'text-align' is
not optimal, but, this being CSS, the designer still has the choice:
1. To make the justification of blocks of text depend on 'direction',
don't set 'text-align' (or set it to 'start').
2. To make the justification of blocks of text independent of the
'direction', set 'text-align' to either 'left' or 'right' (e.g., on
the BODY element).
(I believe some browsers already support the new 'start' value from
CSS3, which allows you to get behavior 1 explicitly, even for parts of
a document.)
[1] http://www.w3.org/TR/css3-text/#justification
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