可以自定义gruntfile usemin函数吗?

时间:2013-12-11 16:33:41

标签: css gruntjs minify

我今天发现grunt build cssmin usemin正在剥离一个属性“-webkit-box-sizing”,导致旧版Safari中的显示问题(例如在G5 ppc mac上)。手动恢复它可以修复构建的“dist”版本的显示问题。有没有办法编辑gruntfile.js让它忽略属性并将其保留在缩小的样式表中?

由于

3 个答案:

答案 0 :(得分:1)

您使用的是什么版本的grunt-contrib-cssmin?我正在使用0.6.2以下配置:

grunt.initConfig({
    cssmin: {
        build: {
            files: {
                'dist/master.min.css' : 'css/master.css'
            }
        }
    }
});

作为测试:

body {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

缩小到这个:

body{-webkit-box-sizing:border-box;box-sizing:border-box}

我不确定cssmin是否存在问题。

编辑:将我的版本归结为最新版本(写作时0.7.0),输出结果相同。

答案 1 :(得分:1)

狂野猜测:当你使用其中一个yeoman生成器生成你的Gruntfile时......你在任何情况下都使用autoprefixer吗? Autoprefixer根据caniuse.com支持表检查供应商前缀,box-sizing可能已经在标准autoprefixer配置不再关心的浏览器生成区域中。

答案 2 :(得分:1)

你如何反转任务?

而不是:

'autoprefixer:dist',
'cssmin',

您可以使用:

'cssmin',
'autoprefixer:dist',

IOW,先缩小,然后添加供应商前缀。