【问题标题】:grunt-contrib-cssmin : Relative path of images is not replaced in target minified filegrunt-contrib-cssmin :图像的相对路径不会在目标缩小文件中替换
【发布时间】:2015-07-31 07:45:57
【问题描述】:

我正在使用 grunt-contrib-cssmin 来缩小我的 css 文件。我希望在我的目标缩小文件中自动替换 css 文件中的相对 url。我已经寻找过这个问题,并找到了可以用来替换 url 的两个选项,

目标,根

我认为target 是我应该使用的那个。我在下面的 Gruntfile.js 中尝试过,但没有得到我想要的缩小文件。

下面是 Gruntfile.js

module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
  cssmin: {
    combine: {
      options: {
        target: "build/"
      },
      files: [{
        dest: 'build/app.min.css',
        src: "Modules/test/app.css"
      }]
    }
  }
});

grunt.loadNpmTasks('grunt-contrib-cssmin');

// Default task(s).
grunt.registerTask('default', ['cssmin']);
};

它转换以下 app.css -:

.edit {
  background: url(../../Main/img/edit.png);
}

关注 app.min.css

.edit{background:url(../../Main/img/edit.png)}

我想要的是缩小的 URL 类似于以下 -:

.edit{background:url(../Main/img/edit.png)}

我认为目标选项应该更改相对 URL,但在我的情况下它什么也没做。请让我知道我做错了什么。

谢谢,

苏克迪普

【问题讨论】:

    标签: css gruntjs relative-path grunt-contrib-cssmin


    【解决方案1】:

    我认为您需要将 rebase 设置为 true,并适当设置路径。我也在为此苦苦挣扎,这并不明显。经过一番试验和错误,我让它像这样工作。

        grunt.initConfig({
          cssmin: {
              options: {
                  relativeTo: "./Main/img",
                  target: "./build",
                  rebase: true
              },
              combine: {
                  files: [{
                      dest: 'build/precisionag.min.css',
                      src: "Modules/test/app.css"
                  }]
              }
          }
        });
    

    更多关于不同 clean-css 选项的信息可以在这里找到clean-css

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 2014-12-25
      相关资源
      最近更新 更多