Статья 2 из 6 серии «Material Design 2: полный гид»
В первой статье мы разобрались с философией Material Design 2 и поняли, почему система работает. Теперь переходим к практике: создаём цветовую палитру и типографическую систему, которые будут отлично работать с кириллицей и российскими брендами.
Сегодня вы получите готовые инструменты для создания собственной цветовой системы и узнаете, какие шрифты лучше всего подходят для русскоязычных интерфейсов на основе Material Design 2.
Содержание статьи
- 1 Цветовая система Material Design 2: от хаоса к порядку
- 2 Реальная структура цветовых ролей
- 3 Светлая и тёмная темы: не просто инверсия
- 4 Культурные особенности восприятия цвета в России
- 5 Типографическая система: иерархия для кириллицы
- 6 Частые ошибки и их решения
- 7 Инструменты и ресурсы
- 8 Figma Community ресурсы
- 9 Чек-лист создания палитры:
- 10 Чек-лист cоздания стилей типографики
- 11 Заключение и следующий шаг
Цветовая система Material Design 2: от хаоса к порядку
Проблема «произвольных цветов»
До появления системного подхода дизайнеры выбирали цвета интуитивно: «Этот синий красивый», «Давайте сделаем кнопку поярче». Результат — интерфейсы, где каждый экран выглядел по-разному, а пользователи не понимали иерархию важности элементов.
Material Design 2 предлагает ролевую цветовую систему, где каждый цвет выполняет конкретную функцию, а не просто «выглядит красиво».
Архитектура цветовой системы MD2
Базовые роли цветов:
🎯 Primary (основной)
-
Главный цвет бренда
-
Используется для ключевых действий: основные кнопки, активные элементы навигации, прогресс-бары
-
Примеры: кнопка «Отправить», выделенная вкладка, плавающая кнопка действия
🎨 Secondary (дополнительный)
-
Акцентный цвет для второстепенных действий
-
Переключатели, чекбоксы, ссылки в тексте, индикаторы уведомлений
-
Должен контрастировать с Primary, но не конкурировать с ним
⚫ Surface и Background (поверхности)
-
Surface — фон карточек, диалогов, меню
-
Background — основной фон приложения
-
Обычно белый/светло-серый в светлой теме, тёмно-серый в тёмной
🚨 Error (ошибки)
-
Индикация ошибок валидации, предупреждений, критических действий
-
Обязательно должен пройти тест на доступность (контраст 4.5:1 минимум)
📝 On-цвета (текст поверх)
-
On-Primary — цвет текста на primary кнопках (обычно белый)
-
On-Surface — основной цвет текста (обычно чёрный или тёмно-серый)
-
On-Background — цвет текста на фоне приложения
Система elevation: визуальная глубина через тени

ссылка на инструмент: The color system — Material Design
Каждый основной цвет представлен в 10 градациях:
-
Primary/50
-
Primary/100
-
Primary/200
-
Primary/300
-
Primary/400
-
Primary/500
-
Primary/600
-
Primary/700
-
Primary/800
-
Primary/900

Зачем столько оттенков?
-
Primary/500 — основные кнопки и ключевые действия
-
Primary/700 — кнопки при нажатии (pressed state)
-
Primary/100 — фон при наведении (hover state)
-
Primary/50 — едва заметная подсветка активных областей
-
Primary/300 — цвет второстепенного текста и иконок
-
Primary/900 — высококонтрастные элементы на светлом фоне
Реальная структура цветовых ролей


Как видно из официальной схемы Material Design, система включает:
Основные роли:
-
Primary — главный брендовый цвет со всеми тонами
-
Secondary — акцентный цвет, дополняет Primary
-
Tertiary — третичный цвет для особых акцентов
-
Error — красный для ошибок и критических состояний
Поверхностные роли:
-
Surface Dim — приглушённые поверхности
-
Surface — стандартные карточки и панели
-
Surface Bright — яркие поверхности
-
Surface Container — контейнеры с содержимым
On-роли для каждой поверхности:
-
On Primary — текст на primary кнопках
-
On Secondary — текст на secondary элементах
-
On Surface — основной текст интерфейса
-
On Error — текст на error элементах
Эта система обеспечивает полную совместимость всех цветовых комбинаций и гарантирует читаемость текста на любом фоне.
Создание цветовых стилей
Для текста:
-
text/primary — основной текст
-
text/secondary — второстепенный текст
-
text/disabled — неактивный текст
-
text/inverse — текст на тёмном фоне
-
text/link — ссылки
-
text/error — текст ошибок
Для фонов:
-
surface/primary — основной фон
-
surface/secondary — фон карточек
-
surface/elevated — приподнятые элементы
-
background/default — фон приложения
-
background/overlay — затемнение
Для действий:
-
action/primary — главные кнопки
-
action/secondary — второстепенные кнопки
-
action/disabled — неактивные кнопки
-
action/destructive — опасные действия
-
border/default — обычные границы
-
border/focus — фокус элементов
Почему именно так?
-
text/primary понятнее чем colors/gray/900
-
heading/lg проще чем typography/headline/large/24px
-
action/primary лучше чем button/blue/500
Светлая и тёмная темы: не просто инверсия

Светлая тема: классический подход
Основные принципы светлой темы:
-
Background: #FFFFFF или #F5F5F5 (чистый белый или едва заметный серый)
-
Surface: #FFFFFF (карточки на белом фоне)
-
Primary: ваш брендовый цвет в полную силу
-
Тени: чёткие, контрастные для создания elevation

Пример палитры для приложения:
Primary: #1976D2 (деловой синий)
Secondary: #FFC107 (золотой для акцентов)
Surface: #FFFFFF
Background: #F5F5F5
On-Primary: #FFFFFF
On-Surface: #212121
Тёмная тема: особенности и нюансы
❌ Частая ошибка: просто инвертировать цвета светлой темы.
✅ Правильный подход в MD2:
-
Background: #121212 (не чёрный, а тёмно-серый)
-
Surface: #1E1E1E и выше (разные уровни серого для elevation)
-
Primary: более приглушённый, чем в светлой теме
-
Текст: Приглушаем, для заголовков #E1E1E1, для основного текста #C4C4C4
-
Тени: заменяются светлыми наложениями
Почему #121212, а не #000000?
-
Чёрный слишком контрастный, утомляет глаза
-
Серый позволяет лучше различать elevation через наложения
-
Лучше совместимость с OLED-экранами

Обязательно проверяем все комбинации на соответствие WCAG 2.0:
-
Обычный текст: минимум 4.5:1
-
Крупный текст (20pt+): минимум 3:1
-
Иконки и важные элементы: минимум 3:1
Культурные особенности восприятия цвета в России
🔴 Красный в России:
-
Ассоциируется с предупреждением, опасностью, критическими действиями, скидками
-
Если не про быстрые продажи, то избегаем красного для основных CTA-кнопок
-
Хорошо работает для Error-состояний
💙 Синий — универсальный выбор:
-
Нейтральный, деловой, внушает доверие
-
Отлично подходит для Primary в корпоративных продуктах
-
Хорошо читается на кириллице
💚 Зелёный — «разрешение»:
-
Успех, завершение, одобрение
-
Идеально для подтверждающих действий
-
Популярен в финтехе и healthtech
Типографическая система: иерархия для кириллицы


Проблема «случайных размеров»
До системного подхода дизайнеры выбирали размеры шрифтов интуитивно: «18px для заголовка выглядит нормально», «Сделаем кнопки 15px». Результат — интерфейсы без визуальной иерархии, где пользователь не понимает, что важнее.
Типичные проблемы:
-
В одном проекте 12 разных размеров шрифта
-
Заголовки разделов одинакового уровня имеют разные размеры
-
Кнопки в разных частях интерфейса не согласованы
-
Отсутствует логика масштабирования между размерами
Material Design 2 решает это через типографическую шкалу — математически выверенную систему размеров, где каждый уровень имеет чёткую роль и назначение.

Объяснение единиц измерения:
-
SP (Scale-independent Pixels) — только для Android, масштабируется с пользовательскими настройками шрифта
-
PX (Pixels) — веб, Figma, универсально
-
PT (Points) — iOS (1pt = 1px на стандартных дисплеях)
-
REM — веб (относительно корневого элемента)
Правильная структура типографических ролей:
📢 Display — самые крупные заголовки
-
Display Large: 57px — герои на лендингах, крупные баннеры
-
Display Medium: 45px — главные заголовки секций
-
Display Small: 36px — заголовки страниц, основные h1
🎯 Headline — заголовки контента
-
Headline Large: 32px — заголовки статей, крупные карточки
-
Headline Medium: 28px — заголовки секций внутри страниц
-
Headline Small: 24px — подзаголовки, h3 элементы
📰 Title — заголовки компонентов
-
Title Large: 22px — заголовки модальных окон, крупных форм
-
Title Medium: 16px — заголовки карточек, списков
-
Title Small: 14px — заголовки мелких компонентов
📝 Body — основной текст
-
Body Large: 16px — главный текст для чтения, описания
-
Body Medium: 14px — дополнительный текст, подписи
-
Body Small: 12px — мелкие пояснения, footnotes
🏷️ Label — интерактивные элементы
-
Label Large: 14px Medium — текст кнопок, активные элементы
-
Label Medium: 12px Medium — чипы, вкладки, теги
-
Label Small: 11px Medium — мини-кнопки, бейджи

Проблемы адаптации западной типографики
Кириллица занимает больше места:
-
Русские слова в среднем на 15-30% длиннее английских
-
Заглавные буквы выше (Ш, Щ, Ж)
-
Строчные буквы имеют выносные элементы (д, р, ф, ц)
Адаптация под кириллицу: детальный разбор
Проблемы Roboto с русским текстом:
-
Сжатость символов Русские буквы Ж, Ш, Щ выглядят узкими Строчные буквы д, ц, щ плохо читаются в мелких размерах. Общая плотность текста выше, чем у латиницы
-
Недостаточная высота строк. Выносные элементы (д, р, ф) требуют больше пространства. Заглавные буквы (Ё, Й) с диакритическими знаками
-
Межбуквенные расстояния Letter-spacing, оптимальный для латиницы, слишком велик для кириллицы
Рекомендации по выбору базового шрифта:
Используйте Roboto, если:
-
Дизайн плотный, место критично
-
Приложение в экосистеме Google
-
Пользователи привыкли к Android-интерфейсам
Используйте Noto Sans, если:
-
Много текстового контента для чтения
-
Целевая аудитория 35+ (лучше читаемость)
-
Качество типографики важнее экономии места
Альтернативы для брендинга:
-
Inter — современный, хорошо работает с кириллицей
-
Manrope — дружелюбный, подходит для B2C продуктов
-
IBM Plex Sans — корпоративный, серьёзный
Тестирование на реальном контенте:
Всегда проверяйте типографику на русском тексте разной сложности:
-
Короткие слова: «Да», «Нет», «ОК» — для кнопок
-
Средние фразы: «Войти в аккаунт», «Добавить в корзину» — для действий
-
Длинные предложения: «Ваш заказ будет доставлен в течение 2-3 рабочих дней» — для описаний
-
Сложные термины: «Конфиденциальность», «Администрирование» — для меню
Проверяем подобранный шрифт на читаемость
Пишешь lI11О0 (маленькая L, большая i, 11, большая о и 0) если символы неразличимы, шрифт не подходит для интерфейсов и текста
Лайфхак проверки шрифта
Создание типографических стилей
Заголовки:
-
heading/xl — 32px, крупные заголовки
-
heading/lg — 24px, заголовки секций
-
heading/md — 20px, заголовки карточек
-
heading/sm — 16px, мелкие заголовки
Основной текст:
-
body/lg — 16px, главный текст
-
body/md — 14px, обычный текст
-
body/sm — 12px, мелкий текст
Интерфейс:
-
label/lg — 14px Medium, кнопки
-
label/md — 12px Medium, теги
-
caption/default — 11px, подписи
Частые ошибки и их решения
Ошибки с цветом
❌ Ошибка 1: Использование чистого чёрного в тёмной теме
Background: #000000 ←** Плохо**
✅ Решение:
Background: #121212 ←** Хорошо**
❌ Ошибка 2: Недостаточный контраст для мелкого текста
Caption (12px) на Primary/300 ← Не читается
✅ Решение:
Caption (12px) на Primary/700 ← Контрастно
❌ Ошибка 3: Одинаковые цвета для Primary и Secondary
Primary: #2196F3 Secondary: #1976D2 ← Слишком похож
✅ Решение:
Primary: #2196F3 Secondary: #FF9800 ← Контрастный
Ошибки с типографикой
❌ Ошибка 1: Слишком маленький line-height для кириллицы
Body text: 16px/20px ← Буквы склеиваются
✅ Решение:
Body text: 16px/24px ← Комфортно читать
❌ Ошибка 2: Неправильный letter-spacing для русского
Button: 0.1em letter-spacing ← Слишком разреженно
✅ Решение:
Button: 0.05em letter-spacing ← В самый раз
Инструменты и ресурсы
Генераторы палитр
-
Material Theme Builder — официальный инструмент Google
-
Coolors.co — быстрая генерация палитр с проверкой доступности
-
Adobe Color — создание гармоничных цветовых схем
Проверка доступности
Шрифты и типографика
-
Google Fonts — Roboto, Noto Sans, Inter и другие
-
TypeScale — генератор типографических шкал
-
Modular Scale — расчёт гармоничных пропорций
Figma Community ресурсы
🎨 Material Design 2 Kit (Официальный)
-
Полная библиотека официальных компонентов MD2
-
Готовые цветовые стили и переменные
-
Обновляется командой Google
🌐 Material Design 2 Web Starter Kit
-
Упрощённая библиотека для веб-проектов
-
Поддержка тёмной темы
-
Простая структура слоёв
Чек-лист создания палитры:
✅ Primary цвет прошёл тест контрастности 4.5:1
✅ Secondary не конкурирует с Primary
✅ Создана тональная палитра 50-900
✅ Настроена тёмная тема с правильными поверхностями
✅ Протестированы все текстовые комбинации
✅ Line-height увеличен для кириллицы на 10-20%
✅ Letter-spacing скорректирован под русский язык
✅ Проверена читаемость на реальном контенте
✅ Настроены Variables в Figma для переключения тем
✅ Созданы Text Styles с правильной иерархией
Чек-лист cоздания стилей типографики
✅ Все стили названы по системе Typography/Role/Size
✅ Line-height увеличен для кириллицы на 15-25%
✅ Letter-spacing скорректирован для русского текста
✅ Протестировано на реальных названиях товаров
✅ Веса шрифтов соответствуют ролям (Regular/Medium)
✅ Размеры соответствуют шкале Material Design 2
✅ Создана документация с примерами использования
Заключение и следующий шаг
Мы разобрали основу любой дизайн-системы — цвета и типографику, адаптированные под российские реалии. У вас есть чёткий алгоритм создания палитры, понимание нюансов тёмных тем и знание того, как правильно работать с кириллицей в Material Design 2.
В следующей статье: «Сетки и пространство в Material Design 2» — разберемся с правильной системой отступов, которые отлично работают на всех устройствах от смартфонов до ультра-широких мониторов.
🔗 Источники и ссылки:
📌 Добавьте в закладки и следите за выходом следующих статей серии!








