决定HAML / SASS的原因是什么?

时间:2010-02-07 20:08:41

标签: ruby-on-rails css xhtml haml sass

我最近一直在阅读有关HAML / SASS的内容,我不太清楚为什么任何人都不想使用它。它似乎很容易切换,使事情更清洁,更有效率。


更新

使用其中一个怎么样?我听到的大多数投诉(少数抱怨)似乎与HAML有关,混合和匹配XHTML / HAML和CSS / SASS会有什么问题吗?


更新

抱歉,问题的最后更新。在我看来,从SASS切换回CSS非常简单。如何从HAML切换回HTML?

11 个答案:

答案 0 :(得分:11)

如果你正在使用Rails,是的。去吧。但是,您将遇到的一些问题是,之后带入团队的任何其他开发人员也必须学习它。如果你已经和一大群Rails人群一起工作,那很好,但HAML / SASS可能会让一位使用纯HTML / CSS的设计师迷惑多年。

如果你没有使用Rails,那么很难找到一个好的HAML / SASS集成系统。有一些,但我想他们没有得到很好的支持或与规范一样远。

但是,是的。 HAML / SASS绝对值得。你会遇到的唯一真正的问题是它还不是标准的。

至于混合比赛,HAML和SASS在风格上非常相似,我会说两者兼备,但它再次归结为个人偏好。尝试使用一天,如果你不喜欢其中之一,请切换回来。关于它没有技术问题,所以你喜欢什么。

答案 1 :(得分:6)

有许多工具可用于处理HTML和CSS。语法并不漂亮,但HAML和SASS的改进对我来说似乎并不那么引人注目,而且对于很多人而言,他们不值得这么麻烦。当然,对于那些开发具有广泛不同框架(不同于Rails)的Web应用程序的人来说,更难找到一个理由去融入如此陌生的东西。 (示例:请注意解释将SASS集成到Java / Stripes / JSP环境中需要做些什么?: - )

答案 2 :(得分:5)

我一直参与志愿者项目,其中HAML的语法曲线(语法空白,标签的自动生成等)被视为一个障碍:对于刚接触项目的程序员来说,还有一件事需要学习。

就我个人而言,我认为SASS是值得的,但是我对HAML充满了兴趣:调试HAML模板之前,看起来你不需要使用HAML进行的打字就会在调试时花掉为什么模板上有错误。这可能是(HAML)新手的观点。

答案 3 :(得分:3)

我倾向于同意这个问题; 易于切换,语法并不复杂, 使事情变得更清晰,更高效。它还使得在无意中生成无效HTML变得更加困难。

我还认为学习曲线足够浅,以至于无法处理它的程序员可能是一个程序员,如果没有你的团队,你会更好。这可能听起来很刺耳,但我相信它。

我能看到的唯一缺点是,如果你在ASP.NET中开发或者改造Haml和Sass会很痛苦,那么方式对于平台上任何其他人都是意外的,并且可能需要在生产环境中维护。在Rails上,去吧。

答案 4 :(得分:2)

我不认为使用HAML会给项目带来很多好处。

另一方面,SASS有效地引入了变量和计算以及其他非常有用的功能,从长远来看,这些功能可以为大型项目节省时间和精力。

使用SASS非常聪明,任何项目都不仅仅是一个简单的单页表单。

答案 5 :(得分:2)

我尝试使用SASS但发现使用MacRabitt's CSSEdit(仅限Mac)编辑CSS对我的工作方式来说更简单,更有效。我是一个非常直观的人,喜欢在更改样式表时进行实时预览,并且不想投入大量时间进行我没有遇到问题的事情。

答案 6 :(得分:2)

大多数人没有意识到的一点是HAML sucks for content。它非常适合结构化标记,但不要试图将其推得太远。 (您也可以在HAML文件中混合和匹配HTML!)

Sass绝对是必不可少的,特别是从长远来看。当你把它放在头脑中时,它不仅仅是关于编写样式表,而是关于将它们保存在路上。新的Sass3将语法问题排除在等式之外:如果你更喜欢卷曲的SCSS语法,你可以选择。

答案 7 :(得分:1)

为什么会这样..

%p
  hello world

比这更好..?

<p>hello world</p>

线索..如果你没有做红宝石,那不是。不幸的是,添加结束标签和大括号并不是制作网页最具挑战性的方面,因此大多数专业人士都不会真正关心。使用您喜欢的任何一种。

答案 8 :(得分:1)

HAML / SASS可能确实很棒,但它们确实引入了技术和知识导向的依赖关系。如果您的开发和生产环境得到足够的控制和可预测性,并且新手接受了足够的培训(或者在进入组织的过程中经过审查以获得主题知识),那么这可能不是问题,但是所有这些都是开销的。得到承认。

答案 9 :(得分:0)

从开发者的角度来看,Haml和Sass绝对是摇滚乐。但是:从设计师的角度来看,Haml和Sass可能无法读取。这真的取决于你队伍中的人员。

如果是一群不害怕学习DSL的开发人员和/或设计师,那么绝对要去做。

如果你有一个混合团队,设计师将他们的CSS和HTML工作交给那些将其翻译成Haml / Sass的开发人员,当然。

如果你有一个设计团队将工作交给开发人员并且工作流回设计师,你可能想要使用它,因为设计师可能无法使用他们的工具来编辑文件。

如果你有一个小团队,营销和业务人员需要编辑网页,他们只知道HTML和一点点CSS,那么你可能不应该使用Haml / Sass。

但是你不能在这里做一个全面的陈述。考虑到至少使用Rails,您可以在视图中混合模板类型。因此,您的某些模板可能是纯粹的HTML卡在.erb文件中,而其他页面则是.haml文件。您可以将部分类型插入另一个类型的模板中。 (我认为混合类型可能是一种不好的做法,但如果你只需要“完成工作”那么它就是一种选择。)

答案 10 :(得分:0)

我现在在Django项目上使用SASS。我喜欢它,并将继续使用它。然而,我发现的一个问题是,错误消息并不总是特别直观,特别是如果您不使用}