Re: 关于css variable草案的一点感想

我建议太复杂的计算还是留给javascript。把表现层与计算层分开来,以后的人会很感激。
加入复杂的计算,固然能造出很炫的效果(用纯ccs),但是不实用:1,同样的事情可以加入javascript来解决;2,混在一起造成设计的难度大。

话又说回来,css的变量还是很期待。上星期我就做一个C#的项目,里面的datagrid只能赋值给Width,我就想用css变量实现这样的效果:

.column{
	max-width: calc(width);
	width: 0px;
}

可是现有的css做不到啊。

Ben Lin

On Fri, Mar 9, 2012 at 4:19 AM, John Hax <johnhax@gmail.com> wrote:

> 发现新的css variable草案( http://dev.w3.org/csswg/css-variables/ )真是个顺眼的提案。
>
> 一直以来,CSS老大Bert Bos的反对css variable的意见(
> http://www.w3.org/People/Bos/CSS-variables
> )让我觉得挺纠结的。因为虽然强调保持CSS的简单性听上去挺有道理的,但是实际上现在CSS3的发展使得CSS必然变成一个有难度的专用语言。相比较transform的矩阵变换、复杂的渐变等,变量定义的复杂性实在是不值一提啊。不过我也觉得有Sass/LESS/Stylus等方案,专门在CSS里引入变量似乎也价值不大。
>
> 现在这份提案就不同。因为它利用了cascade机制的威力,使得有了类似自定义属性的能力。而这是Sass/LESS等做不到的。它们只能做静态编译,而CSS
> var则是动态的获取computed/used value。
>
> 不过现有的草案也有缺点。最大的问题是CSS的内置处理函数太弱,只有calc(),或者属性特定的复合函数比如linear-gradient之类的。这很大程度上限制了css变量的用途。比方说缺乏像darken()这样的函数。另外因为没有mixin机制,也没有条件分支,甚至也缺乏字符串处理函数或者简单的值分割函数,所以很难基于变量做到抽象复用。由此看来,css
> variable要变成一个非常有价值的工具,可能仍待时日啊。
>

Received on Sunday, 25 March 2012 15:58:56 UTC