我想将我的(巨型)全局css文件分成多个文件。我正在使用sass。是否有一种简单的方法可以让sass观看多个文件?我想我可以使用@import,但只是想知道是否有另一种(更好的)方式。
提前致谢。
答案 0 :(得分:15)
Rich Bradshaw 提及的内容是正确的,但这是您可以
采取的另一种方法。创建一个名为combined.scss
的scss文件(例如),然后在此文件@import
内放入所有scss文件,然后只需运行sass --style compressed --watch combined.scss:combined.css
即可检测导入的scss文件的更改并根据需要重新编译。
Combined.scss
示例:
@import "reset";
@import "layout";
@import "styles";
@import "ie";
因此,当您对layout.scss
文件进行更改时combined.scss
将重新编译,并且您需要引用的所有实际html页面都是combined.css
。
但就像我说的那样, Rich Bradshaw 的解决方案也可以正常运行,并且根据您正在进行的项目可能会更好用。
答案 1 :(得分:8)
我使用import,然后转到我的媒体目录,其中包含一个名为css的目录,其中包含我的所有css并运行sass --style compressed --watch css:css
。这会从scss文件的大量产生一个css文件。
为了澄清这一点,如果您将导入的文件命名为以下划线开头,那么SASS不会尝试编译它们。
所以,如果你有一个名为style.scss的文件,包含这些行,
@import 'reset';
@import 'blog';
和一些名为_reset.scss和_blog.scss的文件将意味着当您运行上面的命令时,它会生成一个名为style.css的文件,其中包含所有其他文件。变量也被宣布为更高的工作量。