在我的项目中,我们在不同的目录中有 CSS 文件,以及来自供应商的其他样式表,例如 twitter bootstrap 和 font awesome。在生产环境中,我们尝试将所有样式表缩小并合并为一个样式表。为此,我grunt-contrib-cssmin
在 Grunt 中使用。它可以工作,但字体真棒字体文件的链接中断。这是由于原始 CSS 文件引用了特定目录中的字体。例如,在字体真棒:
src: url('../fonts/fontawesome-webfont.eot?v=4.3.0');
现在我的 grunt-contrib-cssmin 配置如下:
cssmin: {
target: {
files: {
'web/assets/css/app.css': [
'public/assets/font-awesome/css/font-awesome.min.css',
'public/assets/bootstrap/dist/css/bootstrap.min.css',
'public/assets/select2/dist/css/select2.min.css',
'public/assets/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css',
'public/assets/css/*.css'
]
}
}
}
自然,由于字体真棒代码现在将驻留web/assets/css/app.css
在web/assets/fonts/
. 我可以简单地使用 grunt 将所有字体复制到此目录,但如果预计会在其中找到某些资源,fonts/somethingelse
它将再次中断。
如何将所有文件保存在正确的位置,或修复 CSS 代码以引用正确的文件?