2009-01-28 82 views
4

是否有一种结构化语言以合理的方式声明样式,然后可以将其呈现为浏览器特定的css文件,类似于GWT对Javascript的作用?X对CSS来说是什么GWT对Javascript来说是什么;什么是X?

它理想情况下是一种支持变量,处理浏览器怪癖和差异的语言(例如,过滤器:alpha与不透明度),为诸如居中等常见任务提供了一种直观的语法,并且有一种方式来表达对较差能力浏览器。

回答

3

GWT实时生成代码的能力和强大的“延迟绑定”能力可以肯定地应用于样式表并允许CSS的构建时优化。

现在,根据样式的“GWT方式”将包括您需要的所有样式,并使用“依赖样式名称”来应用它们。但是这绝对会导致无用的CSS被丢失,而不需要它。

我知道在构建时至少有一次尝试优化CSS。这将涉及将多个单独的样式表合并为一个,并删除所有非必要的空白(缩小)。我认为这也可以允许你使用deffrred绑定来从本质上“优化”CSS,从不需要的地方(例如:浏览器特定的样式)。

StyleInjector

+0

不幸的是,它尚未准备好生产。但我期待着它。这听起来像是一个很好的解决一些问题的CSS。 – Chii 2009-01-28 11:36:25

6

Sass,就像在Haml和Sass有一些你正在寻找的东西。 它有变量,数学和其他好东西。

正式版本是基于Ruby的,但也有其他语言(如PHP和Python)的版本。

它可能不会做你曾经提到的,但值得一试。

0

感谢您的意见! Sass和HSS在范围上看起来非常相似:简单块变量,嵌套块,单行注释。 HSS具有作为CSS超集的优势。

StyleInjector看起来更有雄心和有趣。通过利用GWT的延迟绑定功能并引入条件等CSS语法扩展,这种方法不仅可以轻松定义浏览器特定的类型,还可以定义特定于语言环境的样式。还能够直接引用其他GWT资源,并通过删除和合并选择器来自动最小化样式,这非常酷。我一定会密切关注这个项目。

2

要回答我自己的问题(再次):Less似乎是迄今为止最有趣的项目之一。 CSS扩展支持变量,mixins(复杂变量),嵌套规则和简单算术。