Что делает инструмент
Генератор CSS-спрайтов объединяет набор иконок или небольших изображений в один спрайт и пишет CSS для отображения каждого из них. Добавьте файлы PNG, SVG, GIF или JPG, выберите раскладку и скачайте PNG-спрайт вместе с таблицей стилей, где на каждое изображение приходится один класс.
Имена классов берутся из имён файлов: Home Icon.png превращается в .icon-home-icon, а повторяющиеся имена получают номер. Плотная раскладка использует упаковку в контейнеры, чтобы разместить изображения разных размеров на листе минимальной площади; Вертикальная, Горизонтальная и Сетка дают предсказуемые позиции.
Как пользоваться
- Нажмите Добавить изображения… и выберите иконки (или начните с примера).
- Выберите Раскладку и Отступ. Небольшой отступ не даёт соседним иконкам «просачиваться» друг в друга при масштабировании в браузере.
- Задайте Префикс класса и Имя файла спрайта, которое используется в
background-image. - Выберите @2x, если изображения нарисованы в двойном размере для Retina-экранов.
- Нажмите Скачать 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 генерируется локально.