- From: Brad Kemper <brad.kemper@gmail.com>
- Date: Thu, 19 Nov 2015 15:37:27 -0800
- To: Dael Jackson <daelcss@gmail.com>
- Cc: www-style@w3.org
> 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