SVG

SVG URL кодировщик

Кодируйте SVG для использования в CSS свойстве background-image

Вставьте SVG или перетащите файл

Здесь появится картинка

Фон
Кавычки
Кодированный SVGможно править прямо здесь — пересоберётся вся строка
CSSготово для background-image
Появится здесь
Tailwindпроизвольное значение в квадратных скобках
Появится здесь

Почему SVG в CSS не кодируют в Base64

Base64 нужен, когда двоичный файл (PNG, шрифт, PDF) приходится протащить через место, где допустим только текст. SVG двоичным не является, это обычная разметка, и в правило CSS её можно положить как есть. Достаточно экранировать символы, которые ломают значение url() : угловые скобки, кавычки, решётку в цветах. Именно это и делает кодировщик выше.

Выигрыш двойной. Base64 раздувает данные примерно на треть, а экранирование добавляет считаные проценты, так что строка выходит короче. И она остаётся читаемой: в экранированном SVG видно теги и цвета, так что поправить заливку можно прямо в CSS, не перекодируя картинку заново. Что такое Base64 и когда он всё-таки нужен, рассказано в статье про кодирование Base64.

Где пригодится встроенный SVG

  • Иконки в псевдоэлементах. Стрелка или галочка через content зависит от шрифта и съезжает по базовой линии, а фон с SVG выглядит одинаково везде. Разбор самих псевдоэлементов есть в статье про псевдоклассы и псевдоэлементы CSS.
  • Мелкая декоративная графика. Паттерны, разделители, галочки в списках. Каждая такая картинка отдельным файлом даёт лишний сетевой запрос, а встроенная приезжает вместе со стилями.
  • Экономия на запросах. Приём даёт заметный эффект именно на мелочи в единицы килобайт. Крупную иллюстрацию встраивать не стоит, она раздует CSS, который блокирует рендер, и попадёт в кеш вместе со стилями вместо собственного.

Похожие инструменты

Другие полезные инструменты из той же категории

Часто задаваемые вопросы

Кодирование SVG преобразует SVG-файлы в data URL, которые можно встраивать прямо в CSS, устраняя необходимость во внешних файлах.

Используйте закодированные SVG для маленьких иконок и декоративных элементов в CSS для уменьшения HTTP-запросов и улучшения скорости загрузки.

Закодированные SVG увеличивают размер CSS файла. Лучше всего для графики менее 5КБ. Большие файлы должны оставаться внешними.

Да! URL-кодирование SVG примерно на 30% компактнее Base64. Оно кодирует только специальные символы, сохраняя читаемость и меньший размер файла.

Удалите ненужные метаданные, упростите пути, округлите координаты, минифицируйте код. Используйте инструменты вроде SVGO для автоматической оптимизации перед встраиванием.