gulp autoprefixer не добавляет префикс moz

Я использую gulp с автопрефиксом в своем проекте, и мне нужно использовать градиент фона следующим образом:

background: linear-gradient(#e98a00, #f5aa2f);

но вывод:

background:-webkit-linear-gradient(#e98a00,#f5aa2f);
background:linear-gradient(#e98a00,#f5aa2f);

Что не так со мной?

Является частью Gulpfile.js

gulp.task('styles', function() {
  return gulp.src(['css/less/mainPage.less'])
    .pipe(plumber())
    // .pipe(concat('base.scss'))
    .pipe(less())
    .pipe(prefix([{ browsers: ['IE 8', 'IE 9', 'last 5 versions', 'Firefox 14', 'Opera 11.1'] }]))
    .pipe(minifyCSS({keepBreaks: true}))
    .pipe(gulp.dest('css'))
    .pipe(connect.reload());
}); 

Я использую gulp-autoprefixer

даже если я установил

 browsers: ['Firefox 14']

вывод еще:

 background:-webkit-linear-gradient(#e98a00,#f5aa2f);
 background:linear-gradient(#e98a00,#f5aa2f);

person betmakh    schedule 29.09.2014    source источник
comment
Вы используете gulp-prefix или gulp-autoprefixer?   -  person Balthazar    schedule 29.09.2014


Ответы (3)


Используйте «autoprefixer-core» с «gulp-postcss». Пример использования:

var MASK_SRC = "./src/mask/page0/";

var gulp = require("gulp")
var plumber = require("gulp-plumber")
var postcss = require('gulp-postcss');
var sourcemaps = require('gulp-sourcemaps');
var autoprefixer = require('autoprefixer-core');
var csso = require("gulp-csso")

gulp.task("styles", function() {
    return gulp.src(MASK_SRC + "scss/*.css")
    //.pipe(plumber())
    .pipe(postcss([ autoprefixer({ browsers: ["> 0%"] }) ]))
    //.pipe(csso())
    .pipe(gulp.dest(MASK_SRC + "/css/"))
})

gulp.task("dev", ["styles"], function() {
  gulp.watch(MASK_SRC + "scss/**/*", function(event) {
    gulp.run("styles")
  })
})
person user4684527    schedule 18.03.2015

Если вы отметите http://caniuse.com/#search=linear-gradient, вы видите, что Firefox начиная с версии 30 не требует префикса moz-. Версия 30 имеет долю глобального рынка ‹1%, и вы установили '> 1%'

person Bass Jobsen    schedule 29.09.2014

Ошибка с gulp-autprefixer. Невозможно добавить префикс "-moz-".

Автопрефиксатор работает хорошо: http://jsfiddle.net/tsvppawk/

Тот же запрос "Firefox> = 2" в gulp-atuprefixer генерирует:

background: -webkit-linear-gradient(#e98a00, #f5aa2f);
background: linear-gradient(#e98a00, #f5aa2f);
person user4684527    schedule 18.03.2015