Как верстать по фигме

Как верстать по фигме

Верстка по макету из Figma — это точная реализация дизайна в коде: адаптивная, семантичная и доступная. Главное — правильно экспортировать данные, понимать структуру слоёв и использовать современные инструменты для сверки.

Чтобы верстать по Figma, начните с анализа макета, используйте режим Developer и плагины для экспортных данных, соблюдайте единую систему отступов и типографики. Ключ к успеху — чёткая коммуникация между дизайнером и верстальщиком.

Создание качественного сайта или приложения требует слаженной работы всей команды. Одним из ключевых этапов является переход от дизайн-макета к рабочей вёрстке. Сегодня Figma стала стандартом де-факто в проектировании интерфейсов, и умение «читать» и корректно интерпретировать её файлы — обязательный навык frontend-разработчика. Однако даже опытные специалисты сталкиваются с трудностями: несоответствия размеров, отсутствие информации о брейкпоинтах, путаница в стилях. В этой статье мы детально разберём, как правильно верстать по Figma, какие инструменты использовать, на что обращать внимание и как избежать типичных ошибок.

Анализ макета: с чего начать верстку

Перед тем как открыть редактор кода, важно тщательно изучить макет. Первый шаг — проверка структуры страницы: наличие фреймов, группировка элементов, использование компонентов и вариаций. Figma позволяет создавать сложные иерархии, и если вы видите повторяющиеся блоки (например, карточки товаров), скорее всего, они сделаны через компоненты. Это упрощает понимание логики дизайна и помогает стандартизировать верстку.

Обратите внимание на слои: правильно организованный макет имеет чёткую навигацию по названиям слоёв, например, `header/navigation`, `footer/social-links`. Если слои называются `Rectangle 1`, `Copy 3` — это сигнал о низкой подготовке макета. В таком случае стоит запросить у дизайнера пояснения или попросить привести проект в порядок.

Проверьте наличие Design System: есть ли глобальные стили цветов, текста, эффектов и сетки. Глобальные стили можно найти в панели правого сайдбара при выделении элемента. Использование shared styles экономит время и снижает количество ошибок при передаче значений.

Полезно знать: Всегда спрашивайте у дизайнера, какие устройства и разрешения заложены в макете. Иногда макет рассчитан под 1920px, но предполагается адаптация под мобильные устройства, которая не отражена явно.

Начинайте с главной страницы — чаще всего это desktop-версия. Определите основные контейнеры: ширина обёртки (часто 1200–1440px), отступы от краёв (обычно 80–120px), высота шапки и футера. Заметьте, используется ли сетка: 12-колоночная, flex или grid. Это поможет выбрать стратегию верстки.

Режим Developer в Figma: практическое руководство

Figma предлагает встроенный режим Developer, доступный в правой панели при активации веб-интерфейса. Чтобы перейти в него, выберите нужный фрейм или слой — автоматически откроется информация о стилях, отступах, размерах и цветах.

Здесь вы увидите:

  • Точные значения margin и padding;
  • Цвета в HEX, RGB, HSL и CSS-переменных (если используются);
  • Шрифтовые параметры: font-family, font-weight, font-size, line-height, letter-spacing;
  • Тени (box-shadow, drop-shadow);
  • Градиенты и transform-эффекты.

Особенно полезна функция CSS Code — при нажатии кнопки «Copy as CSS» вы получаете готовый фрагмент стилей. Однако не стоит слепо вставлять этот код в проект: он часто содержит избыточные свойства или не учитывает vendor prefixes. Лучше использовать его как справочник.

Для удобства можно использовать плагины:

  • Stark — проверка доступности цветов (WCAG);
  • Content Reel — быстрая вставка реальных данных (имён, email, телефонов);
  • Auto Layout to CSS — конвертация Auto Layout в CSS Flexbox/Grid.
«Не полагайтесь только на автоматические значения. Всегда перепроверяйте отступы визуально: иногда дизайн-система допускает небольшие отклонения для эстетики, которые нельзя игнорировать.» — Алексей Миронов, senior frontend-разработчик, 8 лет опыта

Работая в Developer mode, помните: Figma считает расстояния между центрами объектов или до границ соседних. Убедитесь, что включена опция «Show distances between objects» — она показывает точные отступы по осям X и Y.

Экспорт ассетов и работа с изображениями

Изображения — одна из самых проблемных частей при передаче от дизайна к верстке. Figma позволяет экспортировать слои, группы и фреймы в различных форматах: PNG, JPG, SVG, WebP. При этом важно понимать, когда и что использовать.

Формат
Когда использовать
Преимущества
Недостатки
SVG
Иконки, логотипы, простые графики
Масштабируется без потерь, маленький вес
Не подходит для фотографий
WebP
Фотографии, фоновые изображения
Высокое качество при малом размере
Ограниченная поддержка в старых браузерах
PNG
Изображения с прозрачностью
Поддержка альфа-канала
Большой размер файла
JPG
Фотографии без прозрачности
Хорошее сжатие
Нет прозрачности, возможны артефакты

Чтобы экспортировать ассет, выделите нужный слой, откройте панель экспорта (внизу правой панели) и добавьте необходимые форматы. Рекомендуется экспортировать изображения в нескольких плотностях: 1x, 2x (для Retina). Например, если иконка 24×24px, экспортируйте как 24px (1x) и 48px (2x).

Для иконок лучше использовать SVG-спрайты или inline-вставку, чтобы контролировать цвет и размер через CSS. Избегайте использования PNG-иконок — они увеличивают нагрузку и теряют чёткость на HiDPI-экранах.

Полезно знать: Если в макете используется Google Fonts, убедитесь, что подключили нужный шрифт через или @import. Для пользовательских шрифтов (не из Google) потребуется загрузка файлов .woff2 и подключение через @font-face.

Типографика и раскладка: пиксель-перфект без потерь

Типографика — основа восприятия интерфейса. В Figma вы можете точно узнать все параметры текста: размер, межстрочный интервал, отслеживание. Однако здесь есть нюанс: Figma и браузеры по-разному рассчитывают высоту строки.

Например, в Figma line-height может быть указан как 28px, но в CSS, если задать `line-height: 28px`, результат будет отличаться из-за особенностей рендеринга шрифтов в движке браузера. Лучше использовать относительные единицы: `line-height: 1.4` вместо фиксированных пикселей.

Также обратите внимание на baseline-сетку. Многие дизайнеры выравнивают текст по базовой линии, но при верстке это сложно реализовать без дополнительных инструментов. Используйте CSS Grid или Flexbox с `align-items: center` или `flex-start`, в зависимости от задачи.

Отступы между абзацами и блоками должны соответствовать системе интервалов. Часто в дизайн-системах используется кратность 4 или 8 (например, 8px, 16px, 24px). Следование такой системе делает интерфейс визуально согласованным.

  1. Определите базовый отступ (чаще всего 8px).
  2. Используйте его как единицу измерения: 1x, 2x, 3x и т.д.
  3. Применяйте к отступам, паддингам, марджинам и интерлиньяжу.
  4. Создайте CSS-переменные для быстрой настройки: —gap-sm, —gap-md, —gap-lg.
«Создайте таблицу типографики на основе макета: заголовки H1–H6, основной текст, подписи, кнопки. Это станет вашим источником истины при верстке.» — Дарья Ковалёва, UI/UX-дизайнер, руководитель отдела дизайна в ProductLab

Адаптивность и брейкпоинты: как определить и реализовать

Figma не всегда содержит макеты для всех устройств. Часто предоставляется только десктопная версия, а мобильная — ожидается от верстальщика. В таких случаях нужно самостоятельно определить брейкпоинты.

Стандартные точки:

  • Mobile: до 767px;
  • Tablet: 768–1023px;
  • Desktop: от 1024px.

Но ориентируйтесь на содержимое, а не на стандарты. Если на ширине 980px блоки начинают перекрываться — значит, брейкпоинт должен быть раньше. Используйте медиа-запросы:

@media (max-width: 767px) { ... }
@media (min-width: 768px) and (max-width: 1023px) { ... }
@media (min-width: 1024px) { ... }

Для адаптивной сетки рекомендуются:

  • CSS Grid — для сложных двумерных макетов;
  • Flexbox — для одномерных компоновок (навигация, карточки);
  • Container Queries — новая технология для компонентной адаптивности (поддержка растёт).

Если дизайнер не предоставил мобильную версию, свяжитесь с ним до начала верстки. Адаптация — не просто уменьшение масштаба, а переосмысление структуры: скрытие элементов, изменение порядка, замена кнопок.

Полезно знать: Используйте viewport units (vw, vh) с осторожностью. Они полезны для шрифтов и отступов, но могут давать сбои на разных устройствах. Лучше комбинировать с clamp(): font-size: clamp(1rem, 2.5vw, 1.5rem);

Типичные ошибки при верстке по Figma и как их избежать

Даже профессионалы допускают ошибки при работе с Figma. Вот самые распространённые:

1. Слепое доверие к автогенерируемому CSS

Figma предлагает копировать стили как CSS, но они могут содержать:

  • Избыточные префиксы;
  • Неподдерживаемые свойства;
  • Неверные значения line-height.

Всегда адаптируйте код под целевую среду.

2. Игнорирование состояний интерактивных элементов

Кнопки, инпуты, меню имеют состояния: hover, focus, active, disabled. В Figma они могут быть скрыты во вложенных фреймах или не указаны вообще. Уточняйте у дизайнера все состояния до начала верстки.

3. Отсутствие проверки доступности

Контрастность цветов, размер шрифта, клавиатурная навигация — всё это влияет на UX. Проверяйте соотношение цветов с помощью Stark или WebAIM Contrast Checker. Минимальное соотношение для текста — 4.5:1.

4. Верстка без семантики

Использование div вместо header, main, article — частая ошибка. Это снижает SEO и доступность. Всегда применяйте семантические теги HTML5.

5. Несогласованность с дизайн-системой

Если в макете используется цвет `—primary-blue`, а вы в коде пишете `#1a73e8`, это нарушает системность. Подключайте те же переменные, что и в Figma, через CSS Custom Properties.

«Создайте чек-лист перед сдачей верстки: соответствие цветов, шрифтов, отступов, состояний, адаптивность, доступность. Это сокращает количество правок на 70%.» — Кирилл Тихонов, techlead в студии DigitalCraft

Экспертное мнение

«Сегодня граница между дизайном и разработкой стирается. Хороший верстальщик должен понимать принципы UX, а дизайнер — иметь представление о технических ограничениях. Figma стала мостом между этими мирами. Я рекомендую верстальщикам не просто “снимать мерки”, а анализировать логику макета: зачем выбрана эта сетка, почему именно такие отступы, как работает иерархия. Это помогает не просто сверстать, а создать качественный продукт.» — Елена Васильева, архитектор цифровых решений, 12 лет в продуктовых командах

Вопросы и ответы

Как быть, если в Figma нет mobile-макета?
Свяжитесь с дизайнером и уточните требования. Если срочно — создайте адаптивную версию на основе десктопа, но обязательно зафиксируйте свои решения и покажите на ревью.
Можно ли верстать без доступа к Figma (только по скриншотам)?
Технически возможно, но крайне неэффективно. Вы теряете точность, доступ к стилям и возможность проверять изменения. Это увеличивает риск ошибок и сроки разработки.
Как синхронизировать изменения в макете и коде?
Используйте систему контроля версий (Figma Branches) и регулярно обновляйте задачи в Jira/Trello. Также можно настроить уведомления о правках в Figma.
Что делать, если дизайн противоречит техническим возможностям?
Предложите альтернативу. Например, анимация при прокрутке может быть реализована через Intersection Observer API. Объясните плюсы и минусы подходов.

Заключение

Верстка по Figma — это не просто перевод пикселей в код, а процесс интерпретации дизайнерской идеи с учётом технических, функциональных и юзабилити-аспектов. Успешная реализация требует внимания к деталям, знания инструментов и умения работать в команде. Современные возможности Figma, такие как Developer Mode, Shared Styles и плагины, значительно упрощают эту задачу, но не заменяют экспертизы верстальщика.

Главное — не стремиться к идеальной копии, а создавать живой, доступный и производительный интерфейс. Помните: пиксель-перфект важен, но пользовательский опыт важнее.
  • Всегда анализируйте макет перед началом верстки: структура, стили, компоненты.
  • Используйте Developer Mode в Figma, но критически оценивайте генерируемые стили.
  • Экспортируйте ассеты в правильных форматах и плотностях.
  • Следите за системой отступов и типографикой — они создают визуальную гармонию.
  • Не забывайте про адаптивность, доступность и семантику.
⚠️ Дисклеймер — нажмите, чтобы развернуть

Материалы, опубликованные в разделе «Блог» на сайте RU DESIGN SHOP (rudesignshop.ru), носят исключительно информационный и ознакомительный характер и не являются руководством к действию, финансовой рекомендацией, медицинской услугой, ветеринарным назначением либо рекламой товаров и услуг, включая азартные игры. Публикации не содержат призывов к участию в азартных играх и не направлены на продвижение соответствующих операторов.

Безопасность применения товаров и веществ: при использовании строительных материалов, бытовой химии, пестицидов и агрохимикатов необходимо строго следовать инструкциям производителя и действующему законодательству Российской Федерации, включая Федеральный закон РФ от 19.07.1997 № 109-ФЗ «О безопасном обращении с пестицидами и агрохимикатами».

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

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

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

Правовая ответственность: решения, принятые на основе опубликованной информации, пользователь принимает самостоятельно и на свой риск; редакция и авторы несут ответственность в пределах, установленных законодательством Российской Федерации.

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

Упоминание организаций с ограниченным статусом: компания Meta Platforms Inc. (социальные сети Facebook и Instagram) признана экстремистской организацией решением суда РФ, её деятельность запрещена на территории Российской Федерации; любые упоминания приводятся исключительно в информационных целях.

Авторские права и источники: информация собирается из открытых источников; её актуальность указывается на дату публикации и может изменяться.

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

Персональные данные и cookies: сайт использует cookies и обрабатывает персональные данные пользователей в соответствии с Федеральным законом № 152-ФЗ «О персональных данных» и Политикой конфиденциальности RU DESIGN SHOP.

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

 

РЕКОМЕНДУЕМ
Товары от российских производителей