我打算在一个大项目中使用 sass/compass。是否有可能一些团队成员可以使用简单的 css 而其他人仍然可以编写 scss?
我真正想知道的是 compass/sass 收听 scss 并同时转换 css 的方式它是否也可以收听 css 文件并转换回 scss 文件中的任何更改?
我打算在一个大项目中使用 sass/compass。是否有可能一些团队成员可以使用简单的 css 而其他人仍然可以编写 scss?
我真正想知道的是 compass/sass 收听 scss 并同时转换 css 的方式它是否也可以收听 css 文件并转换回 scss 文件中的任何更改?
这是可能的,但并不理想。你最好的办法是打开你的终端并运行
sass-convert --from css --to scss
在您的样式所在的目录中,然后从那里重构。这是一种痛苦,而不是真正的“转变”。它会尝试正确嵌套,并且通常会做对,但是如果您不重构代码并使用诸如 mix-ins、extends 和变量之类的东西,它就会违背使用 SASS 的初衷。
要自动执行此操作,您可能需要使用Guard之类的东西来监视 css 文件的更改。你需要确保你没有同时关注你的主要风格(sass 正在编译的那个),因为这会让你进入一个永无止境的转换循环!
使用命令安装指南针
gem install compass
运行此命令。这将扫描定义的目录中的 css 文件并将它们转换为 scss 文件。
sass-convert -R my_css_dir --from css --to scss
然后执行这个命令
compass watch
这将监视 scss 文件的更改并自动将它们转换为 css 文件。
我会说不——或者至少,不容易。SCSS 与常规 CSS 完全兼容,并且可以编译为 CSS,但反之则不然,因此源文件应该是 CSS 或 SCSS。
不过,这取决于您的项目。假设两名成员正在从事项目的两个完全独立的部分。他们可以使用单独的文件,并选择在 SCSS 或 CSS 中工作。然后,它们的文件可能会包含在主 SCSS 文件中,或者以其他方式与构建脚本合并在一起——或者甚至在生产中保持独立。那不会有任何问题。
不过,我总是希望所有团队成员都以类似的方式工作,这样他们就可以在出现问题时轻松地相互掩护。
您可以查看以下提供此类服务的网站:
https://css2sass.herokuapp.com
______________| CSS | SASS | SCSS |
| CSS | - | X | X |
| Minified CSS | X | X | X |
| SASS | X | - | X |
| SCSS | X | X | - |
我为此写了一个工具:) http://sebastianpontow.de/css2compass
但这实际上只是一个帮助您入门的工具,您应该始终检查输出并重写它的关键部分 - 输出可能不是编写 scss 代码的最佳方式