如何获取有关无效css值的警告

时间:2018-04-14 15:51:18

标签: css postcss

我正从sass迁移到postcss。为了更容易,我使用的是postcss-simple-vars,它支持像sass那样的类似变量。

我的问题是:

$size: 100px;

.class {
    width: $size * 2;
}

Sass结果:

.class {
    width: 200px;
}

带有简单变量的Postcss结果:

.class {
    width: 100px * 2;
}

后者似乎是无效的css代码。为了解决这个问题,我需要使用calc()函数。问题是在我的代码中找到这些计算的所有出现。我有~1 MB的scss ......

是否有任何工具(linter,编译器等)可以分析我的css并警告我需要处理的所有地方?

1 个答案:

答案 0 :(得分:-1)

我不确定是否有可供使用的预构建插件。但是你可以在gulp中创建一个简单的任务,并指出你的css文件上的任何错误。

在你的gulp任务中创建你的新任务,并使用toString()方法从你的style.css文件中调用errorInfo

gulp.task('styles' function() {
  return gulp.src('your src ./path for your style.css ')
    .on('error', function(errorInfo) {
     console.log(errorInfo.toString());
     this.emit('end');
 })
   .pipe(gulp.dest('your dest ./path four final destination path '));
});
  

更新

var processors = function() {
    return function(css) {
      css.eachDecl('width', function(decl) {
          decl.value = decl.value + ', calc({{ size }} * 2)';
      });
    }
};

gulp.task('css', function() {
  return gulp.src('./app/assets/styles/your_style.css')
    .pipe(postcss([processors]))
    .pipe(gulp.dest('./app/temp/styles/'));
 });