我可以将css转换为scss和scss并行转换为css吗?

时间:2012-05-17 10:22:10

标签: css compass-sass sass

我计划在一个大项目中使用sass / compass。是否有些团队成员可以使用简单的CSS而其他人仍然可以编写scss?

我真正想知道的是指南针/ sass监听scss和转换css的方式同时它还可以监听css文件并转换回scss文件中的任何更改吗?

5 个答案:

答案 0 :(得分:21)

可能,但不理想。你最好的办法是破解终端并运行

sass-convert --from css --to scss

在样式所在的目录中,然后从那里重构。这是一种痛苦,而不是真正的“转变”。它试图正确嵌套,并且通常是正确的,但是如果你不重构代码并使用诸如混合,扩展和变量之类的东西,它就会破坏使用SASS开始的目的。

要自动执行此操作,您可能需要使用Guard之类的内容来查看css文件以进行更改。你要确保你不是也在观察你的主要风格(sass正在编译的那个),因为这会让你进入一个永无止境的转换循环!

答案 1 :(得分:14)

运行此命令。这将扫描定义的目录中的css文件并将它们转换为scss文件。

sass-convert -R my_css_dir --from css --to scss

然后使用命令安装指南针

gem install compass

然后执行此命令

compass watch

这将监视scss文件的更改并自动将它们转换为css文件。

答案 2 :(得分:6)

我会说不 - 或者至少不容易。 SCSS与常规CSS完全兼容,并且它编译为CSS,但不是相反,因此源文件应该是CSS或SCSS。

但是,这取决于你的项目。假设两个成员正在处理两个完全独立的项目部分。他们可以使用单独的文件,并选择使用SCSS或CSS。然后,他们的文件可以包含在主SCSS文件中,或者与构建脚本合并在一起 - 或者甚至可以在生产中保持独立。这不会有任何问题。

尽管如此,我总是希望所有团队成员以类似的方式工作,以便在出现问题时能够轻松地互相覆盖。

答案 3 :(得分:3)

您可以查看以下提供此类服务的网站:

https://css2sass.herokuapp.com

 ______________| CSS | SASS | SCSS |
| CSS          |  -  |   X  |   X  |
| Minified CSS |  X  |   X  |   X  |
| SASS         |  X  |   -  |   X  |
| SCSS         |  X  |   X  |   -  |

答案 4 :(得分:2)

我为此写了一个工具:) http://sebastianpontow.de/css2compass

但这真的只是一个让你入门的工具,你应该总是检查输出并重写它的关键部分 - 输出可能不是编写scss代码的最佳方法