为什么使用grunt-contrib-cssmin改变我的CSS而它应该只是缩小它

Muh*_*aza 5 javascript css node.js gruntjs grunt-contrib-cssmin

我正在使用grunt-contrib-cssmin来缩小我的css文件.我认为这个工具(grunt-contrib-cssmin)只是clean-css的包装器.一切都很好,除了这个咕噜插件正在改变我的CSS.我试图使用我可以在clean-css存储库中找到的每个选项,但没有任何效果.请帮助我这个东西杀了我!!

咕噜文件:

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']);
};
Run Code Online (Sandbox Code Playgroud)

缩小之前:

.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;
}
Run Code Online (Sandbox Code Playgroud)

缩小后:

.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}
Run Code Online (Sandbox Code Playgroud)

现在我们可以看到'background:none'的东西被改为'background:0 0'我怎样才能确保它不会对我的CSS进行任何更改,除非缩小它.

jak*_*lla 5

啊,在查看了 Github 中的 clean-css 问题后,我发现了这个问题,它标识了background:none;“优化”到background:0 0;. 请注意,它缩短了 1 个字符。我认为这在“丑化”库中很常见,但它应该与纯粹的“缩小”分开,IMO 应该只删除不重要的信息,如空格。

查看 clean-css选项(您可以在 cssmin 配置中使用)我认为没有办法禁用它,我尝试了shorthandCompactingadvanced选项但没有运气。不幸的是,看起来你被这个问题困住了。但是,background:0 0;应该与background:none;.