4 способа добавить иконки на сайт из Figma — все плюсы и минусы
Поговорим о том, КАК ДОБАВИТЬ ИКОНКИ НА САЙТ ИЗ FIGMA. Для тех, кому интереснее смотреть видео, прикрепляю свой видосик на YouTube:
Проверяя html-макеты верстальщиков и разработчиков наблюдаю проблемы с добавлением иконок на сайт. Они их добавляют чёрт пойми как… Могут добавить их как png изображения, а могут вообще использовать не иконки из макета, а похожие иконки, использовав, к примеру, FontAwesome. Это жестко, скажу я вам.
В связи с этим я хочу расставить все точки над i в этой теме и рассказать достаточно подробно о том, как лучше всего добавлять иконки на сайт из макета Figma.
Способов хватает, и выбор конкретного способа зависит от самого проекта и дизайнера, который делал макет. Собственно об этом всём мы и поговорим!
Способ №1 — это экспортировать иконки в svg формат и вставлять их либо как код, либо как изображение, либо как CSS свойство.
Сосбтвенно, выделяем иконку в Figma и жмём на экспорт в SVG формат, сохраняем в наш проект и вставляем на сайт:
Сам по себе вариант самый очевидный, простой и достаточно хороший.
Однако тут у нас выступает 2 очень неприятные проблемы.
Первая проблема — если мы используем svg код, то сам код становится достаточно большим так как сама иконка может быть очень сложной по цветам и количеству вектора внутри.
Вторая проблема — это если мы подключаем иконку таким способом, то нам проблематично менять её цвет через CSS или даже JS. Придётся экспортировать дубль иконки, но с другим цветом. А в случае с тегом object у нас вообще не будет нормально работать ссылка, если мы обернули её в тег .
Есть также ещё небольшой минус — он связан с тем, что мы не можем задать размер иконки через свойство font-size (то есть мы не наследуем размер шрифта). Приходится всё время «играться» с шириной и высотой.
Из плюсов, пожалуй, только то, что вариант простой и экономит немного времени в небольших проектах.
Поэтому этот вариант на самом деле подходит тогда, когда иконок в макете не много (то есть максимум штук 3-5) и их цвета нигде не меняются (к примеру по наведению или теме макета).
Способ №2 — это создать 1 файл со всеми иконками. По-другому это называют текстура иконок.
Вариант также подразумевает экспорт иконок в svg или png формат, но одним файлом, где будут все иконки одного размера. Это довольно старый вариант, но знать о нём нужно. Я точно знаю, что ВКонтакте использовали этот способ очень долго, и после редизайна они отказались от этого способа в пользу SVG + JS.
К примеру, иконки соц. сетей:

Прописываем код для иконки ВК и Instagram:
.icon < position: relative; display: inline-block; width: 40px; height: 40px; background-image: url('img/socials-pack.svg'); background-size: 287px; background-repeat: no-repeat; >.icon_vk < /* начальная позиция стоит по-умолчанию */ >.icon_instagram
Тут у нас выступает 2 проблемы:
Первая — у нас может занять много времени подготовка CSS свойств.
Вторая — опять очень проблематично менять цвета. Придётся экспортировать столько дублей иконок, сколько нужно цветов.
Зато тут есть 1 приятный плюс — это небольшой HTML код, так как мы используем только класс, чтобы добавить иконку.
Сам вариант нужно использовать с осторожностью и только по особенности проекта (к примеру, если мы хотим сделать плагин со смайликами для чата). В других же ситуациях нужно использовать другие варианты.
Способ №3 — использовать готовый сервис иконок. Тут вам важно уточнить у дизайнера — ОТКУДА ВЗЯТЫ ИКОНКИ.
Небольшое отступление — вам в принципе нужно всегда спрашивать у дизайнера: какие иконки, откуда изображения, где взять шрифт и т.п. вопросы.
Часто бывает такое, что иконки взяты с какого-то сервиса, который позволяет подключить иконки через стили или скрипты.
В Figma дизайнеры часто используют сервис Iconify.
Либо дизайнер мог использовать другие иконки, где есть готовое подключение на сайт. Тот же EvaIcons, к примеру.
Пример подключения через Iconify:
Тут я уже начну с плюсов:
- во-первых, мы можем очень легко и быстро подключить все иконки на сайт
- во-вторых, цвет иконки меняется очень просто по свойству color в css
- в-третьих, размер иконки наследуется от шрифта и мы можем его менять по свойству font-size
- да и в целом в нашем html коде всё аккуратно, иконки занимают 1 строку
Из минусов, пожалуй, только то, что мы подключаем сторонний сервис/библиотеку, и вместе с этим много лишнего кода. Но это мелочь, особенно если дедлайн проекта горит.
Этот вариант следует использовать, если иконок в макете больше 5 и их цвета не нигде не меняются.
Способ №4 — это самостоятельно превратить все иконки в иконочный шрифт
В этом случае вам не повезло, потому что дизайнер использовал иконки, для которых нет никакого решения для подключения на сайт (вот подлец).
Что мы делаем:

- мы экспортируем все иконки в svg формат (будет лучше, если все они будут чёрные, латиницой без символов и слова «icon»)
- импортируем их в сервис icomoon (чтобы сэкономить кучу времени). Тут важно, чтобы у вас все иконки были в кривых (fill), а не обводкой (stroke). Сервис не работает с обводкой, и он вас предупредит, если какая-то иконка будет сделана обводкой
- генерируем иконочный шрифт и получаем готовый CSS файл и превьюшку с иконками
или в файле стилей --> .button:before
Из плюсов я выделю:
- возможность легко менять цвет через CSS свойтсво color
- возможность задавать размер иконки через font-size (то есть иконка наследует размеры щрифта)
- небольшой html-код, так как мы используем только 1 небольшой класс для добавления иконки
- простая поддержка иконок (легко добавлять и удалять иконки из нашего арсенала)
- экономим пространство тем, что у нас находятся только те иконки и код, которые нужны (в отличии от использования готового решения, где может быть больше сотни иконок)
Из минусов:
- мы тратим немного больше времени на подготовку иконочного шрифта
- нам важно следить, чтобы иконки были в кривых, а не обводочными
Данный вариант подходит, когда иконок в макете много и когда их цвета могут меняться.
Заключение
Друзья! Поверьте, этого всего вам достаточно, чтобы научиться правильно и без проблем подключать любые иконки на любой сайт. Ведь сами понимаете, как важно, чтобы html-макет соответствовал макету в Figma, при это без ущерба производительности и качеству кода.
Пишите в комментариях — что вы думаете по этому поводу.
Не забывайте подписываться на меня в YouTube, там также много полезного.
Удачи вам в ваших макетах и увидимся в следующих видео/статьях. Пока!
Favicon сайта
Фавикон (Favicon) — это иконка, которая отображается рядом с названием страницы во вкладке браузера. Также данный значок отображается в сниппете сайта на странице результатов поиска в некоторых поисковых системах, например Яндекс и mail.ru.
![]()
Фавикон повышает узнаваемость сайта во вкладке браузера, повышает кликабельность в результатах выдачи Яндекса, также он может способствовать уровню запоминаемости ресурса.
![]()
Как установить фавикон
Для установки favicon нужно иметь подходящее изображение. Оно должно быть размером 16×16 пикселей и иметь формат .ico. Фавикон можно создать самостоятельно или выбрать из существующих на специальных сайтах.
Данную иконку необходимо загрузить на сервер, где находится ваш сайт. После чего указать на нее ссылку между тегами .
Для добавления favicon необходимо разместить следующий html код:
В атрибуте href указывается адрес соответствующего файла.
После выполнения данных действий, если все сделано правильно, фавикон должен появиться во вкладке браузера на вашем сайте.
На странице результатов поиска иконка должна появиться в течение двух недель, с того момента как поисковый робот загрузил иконку.
Как сделать иконку сайта на вкладке html
Для того чтобы добавить иконку сайта на вкладке, нужно использовать тег со значением атрибута rel равным «shortcut icon» и атрибут href указывающий на путь к изображению.
rel="shortcut icon" href="path/to/icon.png" />
В этом примере, мы добавляем иконку с путем «path/to/icon.png». Важно, чтобы путь был указан правильно и иконка была доступна по этому пути.
06 апреля 2023
Чтобы добавить иконку для MS Edge, нужно добавить следующие теги внутри тега :
name="msapplication-TileColor" content="#ffffff" /> name="msapplication-TileImage" content="path/to/ms-icon-144x144.png" /> name="theme-color" content="#ffffff" />
Здесь мы указываем цвет плитки приложения для MS Edge в атрибуте content тега с именем msapplication-TileColor . Также мы указываем путь к иконке для MS Edge в атрибуте content тега с именем msapplication-TileImage .
Атрибут name и content тега определяют цвет темы приложения. В данном случае мы указываем, что цвет темы должен быть белым.
06 апреля 2023
Чтобы добавить иконку для IOS, нужно добавить следующие теги внутри тега :
rel="apple-touch-icon" sizes="180x180" href="path/to/apple-touch-icon.png" /> name="apple-mobile-web-app-capable" content="yes" /> name="apple-mobile-web-app-status-bar-style" content="black" />
Здесь мы указываем путь к иконке для IOS в атрибуте href тега . Также мы указываем размеры иконки в атрибуте sizes . Для IOS рекомендуется использовать размер 180×180.
Атрибуты name и content тега определяют поведение веб-приложения на IOS. В данном случае мы указываем, что веб-приложение может быть запущено на IOS и что стиль статус-бара должен быть черным.
Как добавить иконку сайта в адресную строку браузера?
При загрузке сайта, в адресной строке браузера можно иногда увидеть небольшую картинку, которая связана с тематикой сайта. Тот же рисунок отображается рядом со ссылкой при добавлении ее в закладки браузера.

Отображение иконки в строке браузера
Чтобы установить подобную «фичу», необходимо нарисовать изображение размером 16х16 пикселов и сохранить его в формате ICO в корне сайта под именем favicon.ico .
Adobe Photoshop не понимает формат ICO и не сохраняет в нем рисунки, так что для этой цели требуется дополнительный плагин.
Для работы плагина файл необходимо распаковать и сохранить в папке Plug-Ins\File Formats. По умолчанию программа Photoshop CS под Windows устанавливается в папке c:\Program Files\Adobe\Photoshop CS. Тогда полный путь для файла плагина будет c:\Program Files\Adobe\Photoshop CS\Plug-Ins\File Formats.

Размещение плагина для сохранения файлов в формате ICO
После добавления плагина, при сохранении рисунка в списке доступных форматов появляется новый пункт «Windows Icon».

Тип файла для сохранения иконки
Остается сделать желаемую иконку 16х16 пикселов и сохранить ее под именем favicon.ico в корне сайта. Браузер автоматически ищет этот файл и добавляет его в адресную строку, а также закладки.
Файл не обязательно должен располагаться в корне сайта, но тогда следует указать браузеру, где он находится. Это делается через тег , как показано ниже.
Атрибут href задает расположение и имя файла.
Формат рисунка не обязательно должен быть ICO, также допускается использование GIF и PNG. При этом необходимо сменить значение атрибута type на image/gif или image/png , в зависимости от типа изображения.