- From: François REMY <fremycompany_pub@yahoo.fr>
- Date: Wed, 30 May 2012 09:59:56 +0200
- To: "Divya Manian" <manian@adobe.com>, <www-style@w3.org>
From: Divya Manian
> Sent: Wednesday, May 30, 2012 2:58 AM
> To: www-style@w3.org
> Subject: Re: [css-variables] CSS Variables are a NEW kind of variable
>
> Here is what I find weird as a dev about the new syntax:
>
> 1. Var is a variable "property" yet it is invoked as a function. I assert
> then it is not a property and we should not treat it as such. Everything
> about a variable does not sound like a property to me. A Variable seems to
> be a name/value pair of a defined type called Variable. I think it is very
> wrong to shoe-horn this new kind of syntax into an existing 'property' and
> try to reuse the same definition by attaching more prefixes.
This is where our point of view diverges, actually.
For instance, if I was responsible of the spec, I think I would have renamed
"variables" into "user-defined properties".
> 2. I do think the cascading would make it easier for authors to work with
> variables as it provides a scope for vars. This is awesome.
Glad you're liking it. If all the threads about CSS variables are showing
anything, this is at least that it's necessary to better communicate about
CSS variables, explain to authors why they are useful, and give them
concrete samples, or I'm sure they'll never spot the difference between
BASH/SASS/CSS implementations.
> 3. Variables - as defined in spec - take only one argument when they are
> invoked as a function, this begs the question of why they are functions to
> begin with? This is completely contrary to how I have seen functions being
> used. First functions are represented in easier ways by their actionable
> names rather than just generic ones like 'var'. I can even understand
> 'calc' but 'var' is just puzzling.
I completely agree. I also would prefer something like "just use an
identifier".
:root { x-link-color: blue }
a { color: x-link-color }
If this is not possible to do, we shall need an introductory token, which $
can be. However, even with "x-", the var() function should be kept to
provide a default (as second argument) for when the variable is invalid.
Anyway, if you want my opinion, I think the $foo syntax is the syntax that
will probably be used, for practical reasons. But, at least, if will not be
a purely esthetical choice from the spec editor AND it will have driven
reflection about how the WG should communicate upfront about CSS variables.
I already have 'won' if the WG communicate better about variables.
There's just one thing I don't understand about the $foo choice: why the
hell does it use a preprocessor-like syntax knowing that it will not (and
should not) replace preprocessor variables.
Received on Wednesday, 30 May 2012 08:00:30 UTC