@devaide

Почему не открываются картинки из svg спрайта с первого раза?

Здравствуйте! столкнулся вот с какой проблемой:
какая то чехарда с плагином gulp-svg-sprite, картинки из спрайта не отображается пока не перейдешь и не откроешь в браузере какую нибудь картинку из этого спрайта, при этом файлы которые сделаны через настройку shape: { dest: "intermediate-svg"} ведут себя так же.

Еще раз как это не работает:
Переходим на страницу: sedona.u0718915.isp.regruhosting.ru - видим что в шапке не отображается svg картинка (welcome) вставленная через background css.
Идем по адресу: sedona.u0718915.isp.regruhosting.ru/img/svg/sprite...
и видим что картинка открывается, далее, !в этой же вкладке! убираем часть пути и оставляем sedona.u0718915.isp.regruhosting.ru - и переходим, и .. видим что все работает ( картинка welcome) появилась!
Что это может быть?
п.с. такое поведение замечено только при работе через css или тег img, через тег svg открывается сразу.
Спасибо всем откликнувшимся!
-

код таска svg:

let svgSprite = require('gulp-svg-sprite'),
    svgmin = require('gulp-svgmin'),
    cheerio = require('gulp-cheerio'),
    replace = require('gulp-replace'),
    browsersync = require('browser-sync'),
    debug = require('gulp-debug'),

    svgPath = {
        "input": "./source/pictures/svg/*.svg",
        "output": "./public/img/svg/"
    };

module.exports = function () {
    $.gulp.task('svg', () => {
        return $.gulp.src(svgPath.input)
            .pipe(svgmin({
                js2svg: {
                    pretty: true
                }
            }))
            .pipe(cheerio({
                run: function ($) {
                    $('[fill]').removeAttr('fill');
                    $('[stroke]').removeAttr('stroke');
                    $('[style]').removeAttr('style');
                },
                parserOptions: {xmlMode: true}
            }))
           .pipe(replace('>', '>'))
            .pipe(svgSprite({
                inline: true,
              shape: {
                dest: "intermediate-svg"
            },
            mode: {
                stack: {
                    sprite: "../sprite.svg"
                }
            }
            }))
            .pipe($.gulp.dest(svgPath.output))
            .pipe(debug({
              "title": "Sprites"
          }))
            .on("end", browsersync.reload);
   });
};
  • Вопрос задан
  • 348 просмотров
Пригласить эксперта
Ответы на вопрос 1
@devaide Автор вопроса
Решено. Дело в самих svg файлах. Вопрос закрыт
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы