罗盘能合并.css文件吗?

7
我在尝试找出Compass是否可以合并.css文件,而不是在Compass编译.scss文件后使用第三方工具来合并.css文件。我已经在网上和这里搜寻过了,但目前没有发现。我认为config.rb可能有这个选项,但是我只找到了压缩功能。
有人尝试过这个吗?或者有没有找到一个与compass良好配合的第三方工具?

你看过这个主题吗?https://dev59.com/OG025IYBdhLWcg3w_a-r - Waiting for Dev...
@cram1010,谢谢,我在发布之前已经阅读了这篇文章...我希望通过Compass合并.css文件,但由于缺乏答案或建议,我可能会选择第三方工具。 - Sancho_UK
是的,我认为使用指南针是不可能的 :( - Waiting for Dev...
将 .css 文件连接起来应该成为您的部署过程的一部分。 - maxbeatty
1
或者,您可以使用多个@import指令创建一个production.scss文件,以引用不同的.scss文件。 - Maxime Fabre
2个回答

16

我一直想要做同样的事情。最终,我选择了以下解决方案。

采用以下结构(即将您的模块放置在 sass 的子文件夹中)

  • project
    • sass
      • modules
        • header.scss
        • blog-posts.scss
        • footer.scss
        • something-else.scss
      • main.scss
    • stylesheets

更新 main.scss 如下:

@import 'modules/header.scss';
@import 'modules/blog-posts.scss';
@import 'modules/footer.scss';
@import 'modules/something-else.scss';

运行以下命令(从项目文件夹中)以构建

compass compile . sass/main.scss -s compressed

这只是编译 main.scss,而main.scss又会导入你的每个模块。此外,compressed 的样式选项可将输出进行压缩。


非常好的答案,我会使用它...谢谢beardo! - Sancho_UK
哦,如此简单。 有时候我真的很蠢... - ZeeCoder

1

这不是压缩,但您可以在文件名前加下划线来排除文件被复制到输出目录中。例如:

scss/
    _core.scss // will not be copied
    theme.scss  // @import 'core';
css/

compass compile
    create ../css/theme.css

css/
    theme.css

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接