Корзина
Светлая тема
Войти
DEVNEW.ORG » Блог » Уроки по HTML » Урок 12. Что такой CSS-спрайты, сервисы и генераторы спрайтов
Урок 12. Что такой CSS-спрайты, сервисы и генераторы спрайтов
admin
24-10-2023, 20:20 30 0

Урок 12. Что такой CSS-спрайты, сервисы и генераторы спрайтов

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

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

Вкратце: CSS Sprites - это средство объединения нескольких изображений в один файл для использования на сайте, чтобы существенно увеличить производительность. Понятие Sprite может показаться немного неправильным, учитывая, что вы создаете большое изображение, а не работает с маленькими.

Подводя итог: термин «спрайты» происходит из техники в компьютерной графике, чаще всего используемой в видеоиграх. Идея заключалась в том, чтобы сохранить изображение в память, а затем отображать только часть этого изображения, что было быстрее, чем при получение новых изображений. 

CSS Sprites - это в значительной степени точная теория: получить изображение один раз, переместить фон и отобразить только его части. Это уменьшает накладные расходы при получении нескольких изображений.

Для создания спрайтов существует огромное количество сервисов на просторах интернета. Достаточно лишь набрать соответствующий запрос в поисковике. Если очень лень искать, вот несколько популярных ресурсов на эту тему. Генератор спрайтов toptal,  генератор спрайтов inettools. Предположим, то вы нарезали свой шаблон, выбрали все маленькие иконки, создали из него спрайт, что же дальше?

Как использовать иконки из спрайта

Теперь разберем порядок действий при работе со спрайтом.

  • Создадим общий класс, например, назовем его .sprite, фоном которого является данное изображение, которое создано при помощи генератора sprite.png. Этому же классу зададим высоту и ширину, которая будет высотой и шириной иконок спрайта, если они одинаковы по размеру. 
  • Для блоков, где нужно использовать данную иконку, задаем смещение фона на нужную величину с помощью css-свойства background-position. Подробнее о фонах в предыдущей статье.

Пример:

.sprite {
width: 30px;
height: 30px;
background: url("/assets/img/sprite.png");
}
.sprite-icon1 {
background-position: 0 -80px;
}


Good work




Cмотрите также

Игры для Linux 17-04-2023, 19:35
[xfnotgiven_posterlogo]

Space Cadet Pinball Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

Space Cadet Pinball — игра пинбол для Linux. Создана с помощью реверс-инжиниринга на базе windows-игры Space Cadet.

Установка через Flatpak

Установка:

flatpak install flathub com.github.k4zmu2a.spacecadetpinball

Запуск:

flatpak run com.github.k4zmu2a.spacecadetpinball
Игры для Linux 17-04-2023, 19:46
[xfnotgiven_posterlogo]

Mindustry Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

Mindustry — игра в жанре Tower Defense с элементами стратегии. Строительство башен, защита от врагов, производство материалов для строительства.

Возможности

  • Жанр Tower Defense с элементами стратегии.
  • Создание конвейеров для подачи боеприпасов в башни.
  • Производство/добыча материалов для строительства.
  • Создание материалов.
  • Создание дронов для автоматической добычи ресурсов.
  • Одиночная кампания.
  • Обучающий уровень в рамках кампании.
  • Сетевая игра.
  • Пользовательская игра — настраиваемые условия.
  • Редактор уровней.

    Установка через Flatpak

    Установка:

    flatpak install flathub com.github.Anuken.Mindustry

    Запуск:

    flatpak run com.github.Anuken.Mindustry

    Установка через Snap

    sudo snap install mindustry
Программы для Linux 17-04-2023, 19:11
[xfnotgiven_posterlogo]

QEMU Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

QEMU — виртуальная машина (эмулятор). Программа для запуска гостевых операционных систем внутри хост-системы. Поддерживает аппаратную виртуализацию.

Возможности

  • Эмуляция хост-системы (CPU, память, устройства) для запуска-гостевых операционных систем.
  • Поддержка виртуализации KVM, Xen, Hax, Hypervisor.Framework для исполнения гостевых-систем непосредственно на CPU.
  • Эмуляция в режиме «User mode» для запуска приложений, скомпилированнных под один CPU, на другом CPU. В данном режиме всегда выполняется эмуляция CPU.

    Поддерживаемые хост-архитектуры

    Arm kvm (64 bit only), tcg, xen
    MIPS kvm, tcg
    PPC kvm, tcg
    RISC-V kvm, tcg
    s390x kvm, tcg
    SPARC tcg
    x86 hax, hvf (только 64-bit), kvm, nvmm, tcg, whpx (только 64-bit), xen


    Установка в Ubuntu (LinuxMint)

    sudo apt install qemu

    Установка в Fedora

    sudo dnf install qemu

    Установка в openSuse

    sudo zypper install qemu

    Установка в Gentoo

    sudo emerge -a acct-user/qemu
Игры для Linux 17-04-2023, 19:49
[xfnotgiven_posterlogo]

Эмулятор Game Boy Advance Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

mGBA — эмулятор портативной игровой консоли Game Boy Advance.

Возможности

  • Эмуляция аппаратной части Game Boy Advance.
  • Эмуляция аппаратной части Game Boy/Game Boy Color.
  • Быстрая работа даже на слабых компьютерах.
  • Вариации интерфейса на Qt и SDL.
  • Поддержка картриджей с датчиками движения и вибрацией (только для игровых контроллеров).
  • Поддержка real-time clock.
  • Поддержка Game Boy Camera и Game Boy Printer.
  • Встроенная реализация BIOS и поддержка загрузки внешних файлов BIOS.
  • Возможность создания скриншотов.
  • Запись видео, GIF, WebP, APNG.
  • Загрузка ZIP и 7z файлов.
  • Поддержка патчей IPS, UPS и BPS.
  • Поддержка отладки игр через интерфейс командной строки и GDB.
  • И другое...


    Установка через Flatpak

    Установка:

    flatpak install flathub io.mgba.mGBA

    Запуск:

    flatpak run io.mgba.mGBA

    Установка через Snap

    sudo snap install mgba

    Установка в Ubuntu (LinuxMint)

    sudo apt install mgba-qt

    Установка в ArchLinux (Manjaro)

    sudo pacman -S mgba-qt

    Установка в openSuse

    sudo zypper install mgba
Игры для Linux 17-04-2023, 19:15
[xfnotgiven_posterlogo]

Scid Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

SCID (Shane’s Chess Information Database) — оболочка для просмотра и управления шахматными базами данных.

Игра кросс платформенная
Работает в:

  • Linux
  • MacOS
  • Windows

Установка в Ubuntu (LinuxMint)

sudo apt install scid

Установка в openSuse

sudo zypper install scid

Установка в Gentoo

sudo emerge -a games-board/scid

Отзывы (0)

Кликните на изображение чтобы обновить код, если он неразборчив