- From: Francois Remy <fremycompany_pub@yahoo.fr>
- Date: Tue, 24 Jun 2008 14:25:11 +0200
- To: HåkonWium Lie <howcome@opera.com>, "CSS 3 W3C Group" <www-style@w3.org>
I'm not sure this idea is good. You're right when you say there's some contradiction in the current draft (it what you say is true, I didn't verrify it). But I think variables must be shared through the whole document. A variable should also be able to have different values depending on the media that's currently applied. If no media is declared for a variable, it should be available in all media's type. Why ? So, we can have a "variable definition" style sheet, where we put some colors and images we often use. After, we can use it in all declaration's type (style attribute, other stylesheets, ...) Here a some ideas : _________________________ red.css (disabled) : << @variables { bgColor: red; borderColor: lightred; } >> green.css (disabled) : << @variables { bgColor: green; borderColor: yellowgreen; } >> blue.css : << @variables { bgColor: blue; borderColor: royalblue; } >> main.css : << selector { background-color: var(bgColor); border-color: var(borderColor); border-width: 3px; border-style: outset; } >> After that we can enable/disable "ressources" stylesheet to apply some new theme to the page. _________________________ normal.css : << @variables { print-only: none; } selector { display: var(print-only); } >> onprint.css (media=print) : << @variables print { print-only: block; } >> This need no javascript and is appliable to the whole document easily _________________________ Fremy -------------------------------------------------- From: "HåkonWium Lie" <howcome@opera.com> Sent: Tuesday, June 24, 2008 1:49 PM To: "David Hyatt" <hyatt@apple.com> Cc: "www-style list" <www-style@w3.org> Subject: Re: WebKit now supports CSS Variables > > Also sprach David Hyatt: > > > http://disruptive-innovations.com/zoo/cssvariables/ > > Variables in CSS has often been requested by authors and perhaps it's > time to add this to the language. There are are concerns, however, > about the scope of the variables. The current proposal says: > > The definition of variables crosses @import boundaries. > > If they cross @import boundaries, why should they not cross from one > linked style sheet to another? > > Still, it may be simpler and better not to allow any such crossing. > Take for instance this example: > > style sheet 1: @variable { X: 10px } > style sheet 2: @variable { X: none } > style sheet 3: div { width: var(X) } > > Style sheet numbering is in document order. If the > fininshed-loading-order is: 3, 1, 2, the width declaration would first > be invalid ("The declaration becomes invalid if the variable does not > exist") then valid with 10px, and then invalid again when X is none. > > I'd prefer to throw away invalid declarations at parse time, and not > have to keep them around. Therefore, I suggest that we add text > similar to the @namespace specification: > > The namespace prefix is declared only within the style sheet in > which its @namespace rule appears. It is not declared in any style > sheets importing or imported by that style sheet, nor in any other > style sheets applying to the document. > > http://www.w3.org/TR/2008/CR-css3-namespace-20080523/ > > Cheers, > > -h&kon > Håkon Wium Lie CTO °þe®ª > howcome@opera.com http://people.opera.com/howcome >
Received on Tuesday, 24 June 2008 12:25:56 UTC