- From: Brian Kardell <bkardell@gmail.com>
- Date: Mon, 2 Nov 2015 08:46:14 -0500
- To: Daniel Glazman <daniel.glazman@disruptive-innovations.com>
- Cc: "www-style@w3.org" <www-style@w3.org>
- Message-ID: <CADC=+je+uWsOS9O-guv+rC+KnSajzYfSY7A5gq9hKOuBxy0n7A@mail.gmail.com>
On Mon, Nov 2, 2015 at 4:57 AM, Daniel Glazman < daniel.glazman@disruptive-innovations.com> wrote: > Hi there, > > I just stumbled upon a set of slides authored by Wilson Page from > Mozilla about WebComponents in Gaia. And in this set, I found the > following slide (please note these great slides are just a live > example of CSS Variables usage and I link to a screenshot of them here > only as such): > > http://pbs.twimg.com/media/CSyy2UGWcAA2lbh.png > > Reading this slide triggered many, many comments here. > So I'd like this mailing-list to record my POV on the -- syntax: > > 1. I still find it our ugliest syntactic decision in 20 years > I disagree, I'm used to it already, but that's just bikeshedding I guess. The reason I support it is that it fits CSS's forward compat rules so well because CSS always allowed for -vendor- prefixes, so with one fell swoop it sets a precedence and we can explain simply "there's no vendor" and authors have only 1 new thing to learn that can be applied to custom-anythings, and it kind of jumps out at you like I think it should. > 2. I still find it incredibly error-prone > How? > 3. it allows an author to write the perfectly valid > > .two-columns { > column-count: var(--column-count); > -moz-column-count: var(--column-count); > -webkit-column-count: var(--column-count); > --column-count: 2; > } > > and such a rule seems to me so awful I'm shaking my head in despair. > > is it terrible because there is a --column-count or because there are so many? The later is hardly the fault of --. > Custom Properties are - I did not change of opinion - a superb way > of nicely adding variables to CSS. But first, if they are 'properties', > I don't think we should be able to give the same name to a property and > a custom property; one could argue the names will never be the same > since -- is part of the custom property's name...I'm far from accepting that argument as enough. I think we're making a very bad > decision allowing things like 'background: var(--background)'. But this is exactly one of the ways we can pass things into shadow dom because it relies on a two way agreement. If you set -moz-border-radius, it's not the border-radius, it's the -moz-border-radius. It sounds to me like there's two disagreements here, one that you particularly don't like '--' and the other being that property names can't be used, but does that mean that "background: $background" doesn't have the same criticism? If not, why? > I > perfectly understand the technical details here, and I am replying it's > also our duty to care about the non-technical details that matter > to our main users, web agencies. > > Second, from a readability and maintainance point of view, even $foo > would be better than --foo. Unfortunately, $foo is impossible to avoid > collisions with CSS preprocessors. But that's probably not a good enough > reason to pick up a double dash. If $foo is universally understood as a > variable, --foo is universally understood as a decrement. A very bad > choice again. > I think the "decrement" comment is the strongest argument I've seen, but I don't think 'universal' is true, in lots of things $ is a token indicator or a monetary unit - context matters. I feel like it is pretty safe to say that in CSS properties, selectors, functions, etc - for all times "-" is 'dash' not 'minus' so... Still, anything that follows the same basic pattern works for me, -a- (for author) or -x- for extension or maybe even -$- (because why not I guess) seem to have the same basic appeal of just 'fitting' - solving all the problems at once and being easy to explain. > It's still time to offer better than what we have now. > My 0.02€. > > </Daniel> > > -- Brian Kardell :: @briankardell :: hitchjs.com
Received on Monday, 2 November 2015 13:46:43 UTC