【问题标题】:Compass and Sass are dead?Compass 和 Sass 死了吗?
【发布时间】:2016-11-28 01:21:46
【问题描述】:

我正在学习code school 课程“Sass 基础”。我处于教授讲述指南针框架的水平。 当我安装它时,我意识到它生成的代码不包括 -ms- 和 -o-。

这就是为什么我想向专业人士请教一些我在 Stack 和 Internet 上找不到的提示和信息。

  1. 指南针现在死了吗?如果是,我应该用什么代替它? (确保它会添加 -ms-、-o- 等)

  2. Sass 现在死了吗?

  3. 我做了一些research,人们说我不应该使用 .sass 而应该使用 .scss,但另一方面,如果我使用 .scss,我将无法使用缩进句法。我应该避免缩进的语法吗?如果是,请说明原因。

【问题讨论】:

  • 可能你只需要设置一个标志来让它输出-ms-和-o-。请注意,我在 Compass 方面没有任何经验。

标签: css sass compass


【解决方案1】:

指南针并没有死——它做得很好——但它现在已在大多数人的工作流程中被取代。在那之后不久人们开始使用 CodeKit——现在他们通常使用任务运行器和构建工具,如 grunt、gulp、brunch、broccoli 等。

您想要的是预处理和具有自动前缀的东西。这可以是上面提到的任何东西,通常可以使用一组 npm 模块进行安装和配置。这完全取决于您正在从事的项目。我会说 gulp 是现在最流行的。 (我使用 Ember,所以 Ember CLI 会为我做这些)

.sass 只是另一种语法(我相信原来的语法)。大多数开发人员使用 .scss,我鼓励您坚持使用该语法,因为它更像 CSS,并且在共享项目时人们会感谢您。 (虽然我更喜欢手写笔)

编辑

事后诸葛亮……我想说“Sass Foundation”已经了。那个课程会给你带来更多的麻烦,然后帮助你。只需编写 scss 并根据需要学习新的内容。它只是带有一些有用功能(如变量和嵌套)的 CSS。

【讨论】:

  • “Compass is not, dead”应该是“Compass is now dead”,对吧?
  • 我的意思是,我只是想解密你引用的文本。没关系。 :)
【解决方案2】:

假设我理解您的要求,是的,我会过渡到 SCSS 而不是使用 SASS。为什么?一般来说,SASS结合了SassSCSS。 Sass 本身是一种较旧的语法,主要处理缩进(而不是括号等),并且没有为 CSS 提供任何真正的补充。另一方面,SCSS 旨在通过提供变量、嵌套等附加功能来扩展 CSS3。另一个好处是,从技术上讲,每个有效的 CSS3 样式表也是一个有效的 SCSS 样式表。

总而言之,我肯定会考虑对 SCSS 进行更改,因为您会发现这是业界使用的许多框架和工具中的标准,而且与 Sass 相比,它是一种更新的语法,并提供了良好的处理更多功能,让开发人员的生活更轻松。

如果您想了解更多信息,请访问他们的网站:http://sass-lang.com/

所以专门回答你的问题:

  1. 不,它没有死,它刚刚更新为遵循行业标准。有许多可供选择的方案。例如,一个流行的是 Gulp。
  2. Sass 也没有死,但是大多数开发人员已经转而使用 SCSS。
  3. 由于我上面描述的内容,我会选择 SCSS。

【讨论】:

  • 这里的信息不对。 SASS 缩进语法在功能上等同于 SCSS 语法 - 您可以使用的功能没有区别。
  • 这个答案完全不正确。正如上面的评论所提到的,Sass(即缩进语法)和 SCSS 只是 Sass(CSS 预处理器)的两种不同的语法风格,它们具有相同的能力和功能。
  • Sass 语法非常适合您提到的变量和嵌套。
【解决方案3】:

由于没有一个答案是 100% 准确的,我将提供我自己的答案。

  1. 指南针死了吗? 显然是的。 根据他们的GitHub page

    指南针不再积极维护。

    Compass 似乎快要死了,因为它是用 Ruby 编写的,而且有更快的 C/C++ 编写的 Sass 转译器,主要是 LibSass

    你现在应该使用什么?基于this GitHub issue conversation,我建议切换到Bourbon 以获得一组基本的实用程序mixin。

  2. Sass 现在死了吗? 不,绝对不是。现代 Sass 转译器,包括 LibSass,完全支持 Sass 规范并且工作得很好。

  3. 你应该避免使用 Sass 语法吗? 没有。在我看来,Sass 语法更简洁、更易于阅读,而且绝对更易于输入。

    您可以混合使用 Sass 和 SCSS 语法。因此,您可以将 Bourbon SCSS 语法导入您的 Sass 语法文档并毫无问题地使用 mixins。

    总之,使用让你更快乐的语法。

【讨论】:

  • “Compass 似乎快要死了,因为它是用 Ruby 编写的……我建议改用 Bourbon” -- 但是that's also Ruby...
  • 是的。 Bourbon 有很多 Ruby 代码,但我的理解是它生成纯 Sass 混合,因此您可以运行基于 C++ 的 Sass 转译器,如 libsass。不幸的是,Bourbon 也在消失,并被 Autoprefixer 等基于节点的解决方案所取代。
  • 如果你使用 create-react-app 之类的东西,它只会支持 Sass 和 SCSS 并默认使用 Autoprefixer。
猜你喜欢
  • 2014-04-21
  • 2012-09-23
  • 1970-01-01
  • 2016-04-15
  • 2015-02-14
  • 2011-10-04
  • 2014-09-13
  • 2012-07-20
相关资源
最近更新 更多