Re: [csswg-drafts] [css-ui] Two different colours for a "double" style outline

We don't have any other list-valued sets of properties that "stack" in this sort of way; all the rest run in parallel.

Regardless, if we went with "divide the border-width between the stripes", it would then be impossible to cleanly extend border-width into being list-valued as well - what would that even mean?

> Also, is the issue with the grammar declaration, or do you find the actual syntax confusing?

I find the actual grammar quite problematic, unfortunately - it inverts the relative power of space and comma to the exact opposite of how it works in every single other property. It's *always* the case that commas separate the outermost repetitions, and spaces separate the individual values.

In particular, the fact that `border-color: red, green white, black` creates a border where the top and bottom are red/green and the left and right are white/black is terribly confusing.

We need to either invert the order of things, like `border-color: red white, green black` (where each comma-separated value is a single border "layer"), or use a grouping mechanism like `border-color: stripes(red, green) stripes(green, black);`.  (Note that plain parens are out - we avoided using them in grid-template to avoid clashing with Sass, and the same would apply here.)  I like the first one much better - it matches up well with how other list-valued shorthands decompose into list-valued longhands.

-- 
GitHub Notification of comment by tabatkins
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/1172#issuecomment-351841530 using your GitHub account

Received on Thursday, 14 December 2017 21:30:00 UTC