有没有办法使用资产管道拆分 CSS?

Is there a way to split CSS using the asset pipeline?

我想要实现的最终结果不是只有一个 applications.css 文件,而是我想将它分成两个部分——一个部分我将内联到 <head> 标记,然后是其他所有内容。这背后的原因是我们想要内联 CSS 中适用于页面首屏元素的部分。

我想知道是否有办法利用资产管道删除从 application.css 文件内联的 CSS 部分?

我觉得这是我思考问题的方式可能是最大障碍的问题之一,因此完全愿意接受其他思考方式(即不使用资产管道)。

只是为了让问题更有趣,理想情况下我想要一种独立于项目本身的方法来做到这一点,因为有多个 Rails 前端我需要应用它技术。

注意: 确定我想内联 CSS 的哪一部分不是问题——我已经解决了。我正在寻找的是一种方法,随着我们在未来继续更新我们的 CSS,使生成 CSS 的两个部分成为一个简单的 rake 任务,或者集成到资产管道中,所以它在部署等时完成

这似乎是最直接的方法,如果我们假设资产管道 (a.k.a。sprockets) 是正确的方法,通过导出器扩展 sprockets -- 实际将资产写入磁盘的东西。

更新: 我反而将 css-purge 视为一种现成的解决方案,用于识别给定页面上使用了哪个 CSS .将它作为一个独立的工具,不关心给定页面是通过 Rails 应用程序生成的,有助于使其更有用。