- From: Ben <ben@fadshop.net>
- Date: Sun, 25 Mar 2012 08:58:28 -0700
- To: John Hax <johnhax@gmail.com>
- Cc: 中文HTML5同樂會ML <public-html-ig-zh@w3.org>
Received on Sunday, 25 March 2012 15:58:56 UTC
我建议太复杂的计算还是留给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