Ответы пользователя по тегу SVG
  • Как лучше всего подключать svg иконки на сайт для последующего использования через use?

    @AlBandito
    Лучше прямо в HTML встраивать, чтобы не плодить лишних запросов к внешнему SVG файлу. Однако, если вставлять inline способом, то кешироваться не будет.
    На одной конференции Яндекса советовали вставлять через JS, чтобы они кешировались.
    Сейчас опишу, как я делаю.
    1) Создаем JS файл с inline SVG. К примеру, такой
    // Тут хранятся иконки в SVG
    var icon = '
    <svg style="display:none;">\
      <defs>\
        <symbol id="header-phone" viewBox="0 0 850.394 850.394">...</symbol>\
      </defs>\
    </svg>';    
    // Вставляем иконки в HTML        
    document.getElementById('svg-icon-placeholder').innerHTML = icon;

    2) Создаем в HTML пустой div с id svg-icon-placeholder. В него мы и будем вставлять SVG
    3) Юзаем через use :)
    Довольно просто, но я пока не придумал как автоматизировать сборку спрайтов через GULP таким способом. Если знаете, то подскажите как)
    Ответ написан
    6 комментариев