DevToolPal
RU

Генератор CSS-спрайтов

Объединение иконок в один PNG-спрайт и готовые CSS-классы с background-position для каждого изображения.

Работает локально, без загрузки на сервер

Параметры

Исходные изображения

Изображения (0)

Добавьте изображения PNG, SVG, GIF или JPG. Ничего не загружается на сервер.

Спрайт

CSS

Что делает инструмент

Генератор CSS-спрайтов объединяет набор иконок или небольших изображений в один спрайт и пишет CSS для отображения каждого из них. Добавьте файлы PNG, SVG, GIF или JPG, выберите раскладку и скачайте PNG-спрайт вместе с таблицей стилей, где на каждое изображение приходится один класс.

Имена классов берутся из имён файлов: Home Icon.png превращается в .icon-home-icon, а повторяющиеся имена получают номер. Плотная раскладка использует упаковку в контейнеры, чтобы разместить изображения разных размеров на листе минимальной площади; Вертикальная, Горизонтальная и Сетка дают предсказуемые позиции.

Как пользоваться

  1. Нажмите Добавить изображения… и выберите иконки (или начните с примера).
  2. Выберите Раскладку и Отступ. Небольшой отступ не даёт соседним иконкам «просачиваться» друг в друга при масштабировании в браузере.
  3. Задайте Префикс класса и Имя файла спрайта, которое используется в background-image.
  4. Выберите @2x, если изображения нарисованы в двойном размере для Retina-экранов.
  5. Нажмите Скачать PNG и Скачать CSS (или Копировать изображение, чтобы вставить спрайт в редактор дизайна или чат), загрузите оба файла на сайт и используйте классы: <span class="icon icon-home"></span>.

Пример

.icon {
  display: inline-block;
  background-image: url("sprite.png");
  background-repeat: no-repeat;
}

.icon-home {
  width: 32px;
  height: 32px;
  background-position: 0 0;
}

Советы

  • Держите в одном спрайте иконки, которые меняются вместе: пересборка листа меняет все позиции.
  • Для одноцветных иконок, цвет которых нужно менять через CSS, лучше подойдёт иконочный шрифт на SVG или встроенный SVG.

Частые вопросы

› Что такое CSS-спрайт?

Одно изображение, содержащее много маленьких. Каждая иконка показывается так: элементу задают спрайт в качестве фона и сдвигают его через background-position, поэтому странице нужен один запрос вместо десятков.

› Нужны ли спрайты при HTTP/2?

Меньше, чем раньше, но они всё ещё полезны для множества крошечных иконок, шаблонов писем, игр и старых проектов, а также убирают мерцание иконок, загружающихся по одной.

› Что делает опция @2x?

Если исходные изображения нарисованы в двойном размере, CSS делит пополам все ширины, высоты и позиции и добавляет background-size, чтобы иконки оставались чёткими на экранах высокой плотности.

› Загружаются ли мои изображения на сервер?

Нет. Спрайт рисуется в браузере с помощью canvas, а CSS генерируется локально.