为什么使用 grunt-contrib-cssmin 会改变我的 css 而它应该只缩小它
why using grunt-contrib-cssmin is changing my css while it should only minify that
我正在使用 grunt-contrib-cssmin 来缩小我的 css 文件。我认为这个工具 (grunt-contrib-cssmin) 只是 clean-css 的包装器。一切都很好,除了这个 grunt 插件正在我的 css 中进行更改。我尝试使用我可以从 clean-css 存储库中找到的每个选项,但没有任何效果。请帮助我,这东西要了我的命!!
Grunt 文件:
module.exports = function (grunt) {
'use strict';
// Project configuration
grunt.initConfig({
// Metadata
pkg: grunt.file.readJSON('package.json'),
cssmin: {
options: {
keepSpecialComments:'1',
processImport: false,
roundingPrecision: -1,
shorthandCompacting: false,
aggressiveMerging: false,
advanced: false,
},
minified_css_admin: {
src: ['public/admin/css/style.default.css','public/admin/prettify/prettify.css','public/admin/css/bootstrap-fileupload.min.css','public/admin/css/developer.css'],
dest: 'public/admin/css/minified-css-admin.min.css',
},
},
});
// These plugins provide necessary tasks
grunt.loadNpmTasks('grunt-contrib-cssmin');
// Default task
grunt.registerTask('default', ['admin-default']);
grunt.registerTask('admin-default', ['cssmin:minified_css_admin']);
};
缩小前:
.loginwrapper input#remember_me {
margin: 0 !important;
min-height: 10px;
width: auto;
box-shadow: 0px 0px;
background:none;
padding-left:0px!important;
padding-right:5px!important;
}
缩小后:
.loginwrapper input#remember_me{margin:0!important;min-height:10px;width:auto;box-shadow:0 0;background:0 0;padding-left:0!important;padding-right:5px!important}
现在可以看到 'background:none' 变成了 'background:0 0' 我如何确保它不会对我的 css 做任何更改,除了缩小它。
啊,在查看 Github 中的 clean-css 问题后,我发现 this one 指出 background:none;
是 "optimized" 到 background:0 0;
。请注意,它短了 1 个字符。我认为这在 "uglification" 库中很常见,但它应该与纯 "minification" 分开,在我看来,它应该只删除 none-重要信息,如空格。
查看 options for clean-css(您可以在 cssmin 配置中使用)我认为没有办法禁用它,我试过 shorthandCompacting
和 advanced
选项没有运气。不幸的是,看起来你被这个困住了。但是,background:0 0;
应该与 background:none;
相同。
您可以尝试 restructuring: false
选项
我正在使用 grunt-contrib-cssmin 来缩小我的 css 文件。我认为这个工具 (grunt-contrib-cssmin) 只是 clean-css 的包装器。一切都很好,除了这个 grunt 插件正在我的 css 中进行更改。我尝试使用我可以从 clean-css 存储库中找到的每个选项,但没有任何效果。请帮助我,这东西要了我的命!!
Grunt 文件:
module.exports = function (grunt) {
'use strict';
// Project configuration
grunt.initConfig({
// Metadata
pkg: grunt.file.readJSON('package.json'),
cssmin: {
options: {
keepSpecialComments:'1',
processImport: false,
roundingPrecision: -1,
shorthandCompacting: false,
aggressiveMerging: false,
advanced: false,
},
minified_css_admin: {
src: ['public/admin/css/style.default.css','public/admin/prettify/prettify.css','public/admin/css/bootstrap-fileupload.min.css','public/admin/css/developer.css'],
dest: 'public/admin/css/minified-css-admin.min.css',
},
},
});
// These plugins provide necessary tasks
grunt.loadNpmTasks('grunt-contrib-cssmin');
// Default task
grunt.registerTask('default', ['admin-default']);
grunt.registerTask('admin-default', ['cssmin:minified_css_admin']);
};
缩小前:
.loginwrapper input#remember_me {
margin: 0 !important;
min-height: 10px;
width: auto;
box-shadow: 0px 0px;
background:none;
padding-left:0px!important;
padding-right:5px!important;
}
缩小后:
.loginwrapper input#remember_me{margin:0!important;min-height:10px;width:auto;box-shadow:0 0;background:0 0;padding-left:0!important;padding-right:5px!important}
现在可以看到 'background:none' 变成了 'background:0 0' 我如何确保它不会对我的 css 做任何更改,除了缩小它。
啊,在查看 Github 中的 clean-css 问题后,我发现 this one 指出 background:none;
是 "optimized" 到 background:0 0;
。请注意,它短了 1 个字符。我认为这在 "uglification" 库中很常见,但它应该与纯 "minification" 分开,在我看来,它应该只删除 none-重要信息,如空格。
查看 options for clean-css(您可以在 cssmin 配置中使用)我认为没有办法禁用它,我试过 shorthandCompacting
和 advanced
选项没有运气。不幸的是,看起来你被这个困住了。但是,background:0 0;
应该与 background:none;
相同。
您可以尝试 restructuring: false
选项