Re: Minutes Sapporo F2F 2015-10-26 Part IV: Logical Properties and Values, Next F2F Meetings [css-logical-props]

> On Nov 18, 2015, at 5:38 PM, Dael Jackson <daelcss@gmail.com> wrote:
> 
> fantasai: TabAtkins and I noticed we could not keep track of which
>            came first when using two-value syntax.
>  fantasai: Background and border-spacing have horizontal then
>            vertical.
>  TabAtkins: Logical ones start with block then inline.
>  TabAtkins: I always write it wrong.
>  TabAtkins: So we have issues and no satisfactory answers.
> 
>  fantasai: Grid-area vs grid-template...
>  TabAtkins: Options A an B
>  [A. Splitting the bucket so that:
>      block/inline => grid-area, margin, padding, border, offset,
>                      [ other 4-value ]
>      inline/block => grid-template, background-position,
>                   scroll-snap-align, [ other 2-value ]
> 
>   B. Making logical coordinates always block, then inline, even
>      though physical coordinates in background-position are
>      horizontal, vertical.
>      background-position: start end; /* block, inline */
>      margin: 1em 2em relative;       /* block, inline */
>  ]
> 
>  stevez: Always block before inline seems easy to remember
>  TabAtkins: Some properties have four values and two values.
>  fantasai: We should go back in time and tell Hakon and Bert that
>            background should be consistent with other properties.
>  Florian: With Option B, we don't have a time machine to go fix it,
>           but we can travel to a parallel universe where everything
>           works correctly.
>  Florian: Is this an incentive for people to start using logical
>           properties?
> 
>  TabAtkins: Any objection to option b, block before inline?

I object. Authors have already learned a simple rule: 4-part values relating to sides or corners always start at the top and proceed clockwise. 2-part values based on axis always start with horizontal, then vertical. 

We should not change it so that most authors have to now learn a third rule. Since left to right writing is most common in the world, and since we normally prioritize for Western authors when a priority is needed, we should do so here too:

2-part values based on 2D axis should be inline direction first. This is the least change for the most people. The default writing mode is horizontal-tb, which means the horizontal axis is the inline axis. It is an unnecessary and unexpected thing to have to remember that a different direction comes first when using logical values, even if the writing mode hasn't changed. 

Also, I should be able to write 'background-position: start top' to have it positioned on the top left for English and on the top right for Hebrew (and ignored for vertical writing).

Along the same thinking, 4-direction properties should be block-start, inline-end, block-end, inline-start. That way for western writers, it would be in the same order it's always been. 

Received on Thursday, 19 November 2015 23:37:57 UTC