- From: Alan Gresley <alan@css-class.com>
- Date: Wed, 08 Jun 2011 21:05:30 +1000
- To: Andrew Fedoniouk <news@terrainformatica.com>
- CC: Andrew Fedoniouk <andrew.fedoniouk@live.com>, fantasai <fantasai.lists@inkedblade.net>, www-style@w3.org
On 8/06/2011 4:50 PM, Andrew Fedoniouk wrote:
> From: fantasai Sent: Tuesday, June 07, 2011 10:50 PM To:
>> On 06/08/2011 01:06 PM, Andrew Fedoniouk wrote:
>>> Explicit declaration as 'horizontal-ltr' is significantly more reliable
>>> than anything like 'direction:horizontal reverse'
>>
>> While I agree that we should have a way to explicitly say
>> 'horizontal-ltr',
>> I'm not so certain that logical backwardness isn't needed. I can't think
>> of a use case for backwards ordering in the inline dimension, but I can
>> see backwards ordering being useful in the block direction when you have
>> columns.
>
> I assume that columns are defined as:
>
> block-flow: vertical-wrap;
>
> then if you want to define full set of progressions we will probably
> need to use parametric form of LM defintiion:
>
> block-flow: vertical-wrap[(ttb | btt [, ltr | rtl ])];
>
> that will define all possible configurations.
Why 'ltr' and 'rtl"?
> I don't think that logical directions make sense in CSS at all.
You think the reverse is true with visual direction? Do they make sense?
> They just complicate CSS usage a lot. I said couple of times here that CSS
> should just have pseudo-classes :ltr, :rtl, :ttb that are set from
> @dir. In this case we can define:
>
> .toolbar:rtl
> {
> block-flow: horizontal(rtl); // or just block-flow: horizontal
> horizontal-align: right;
> }
>
> Explicit definitions are always better (manageable) than
> bunch of nested after/before, start/end, reverse/non-reverse, etc.
You have 'block-flow: horizontal(rtl)' Blocks do not flow in how you
think. They progress in an order (perpendicular to the flow). Think of
it like a stream with boats that move sideways. For a horizontal base
writing system, consider line-left as bank-left and line-right as
bank-right.
| ( ( ( ( |
|[ BOAT ]|
| ) ) ) ) |
|[ BOAT ]|
| ( ( ( ( |
|[ BOAT ]|
| ) ) ) ) |
>>> By the way, you used keyword 'reverse'. It is 'reverse' to what
>>> actually?
>>> I mean what exactly defines normal, non-reversed order then, the
>>> 'direction'?
>>
>> Yes.
>
> If "yes" then it means direction of block-flow is governed by the
> 'direction'.
No it isn't. It can be reversed.
| ( ( ( ( |
|[ TAOB ]|
| ) ) ) ) |
|[ TAOB ]|
| ( ( ( ( |
|[ TAOB ]|
| ) ) ) ) |
> At least in default form. And 'direction' is not just a
> text direction but "UI-directionality", right?
The default is the initial embedding level (base direction) of most UI.
<root></root> = <root dir=ltr"></root>
--
Alan Gresley
http://css-3d.org/
http://css-class.com/
Received on Wednesday, 8 June 2011 11:06:00 UTC