在 Susy Getting Started页面上,有一个标记为 的部分'Manual Start'
,上面写着:
“如果您不使用终端和/或 Rails 中的 Compass,您可以使用此方法”。
然后它解释了如何复制 Susy 的 Sass 定义@import "susy"
,然后(它声称),“你很好去”。
我正在尝试将 Susy 用作我自己的构建系统的一部分,该系统使用“sass”命令行命令来编译我的样式表。显然,Susy Sassmixins
依赖includes
于 Compass,所以我从 Compass 发行版中提取了 Compass Sass 定义,并将它们放在 Susy 可以访问的地方。然后我尝试编译我的样式表:
sass -I scss/compass scss/foobar.scss ${CSSDIR}/foobar.css
当我这样做时,Susy 会发出警告:
“您需要提供有效的布局(列数)或有效的媒体查询最小宽度断点(长度)”。
深入研究代码,问题似乎在于 Susy 调用了 Compass 提供的“紧凑”函数。实际的调用是这样的:
compact(false,false,false,...)
其中 - 我认为 - 应该评估为:
false
但是“紧凑”不是 Sass 的特性;它是一个 Compass 函数,在 Ruby 中作为 Compass 的一部分实现。如果 Compass 的 Ruby 扩展不可用,则该调用保持不变,因此 Susy mixin 正在处理:
compact(false,false,false,...)
这不是'false'
......所以事情变成了梨形。(问题发生在 susy/_grid.scss 的第 93 行)。
在我看来,似乎在没有 Compass 的情况下使用 Susy 实际上是不可能的。我对这个问题的最佳解决方案是什么?我只是使用'compass compile ...'
而不是'sass'
编译我的样式表吗?或者我可以以'compact'
某种其他方式提供“sass”的功能吗?