Урок 03. Справочник: директивы и токены темы

📁 Раздел: Введение ⏱️ Время изучения: ~50 мин 🎯 Сложность: Начальная

⚡ Кратко

@source — что сканировать, @theme — из чего генерировать, @layer — в каком порядке применять.

Директивы движка

ДирективаЧто делаетПример
@import "tailwindcss";Подключает тему, preflight и утилиты—
@import "tailwindcss" source(none);Отключает автоопределение файловсканируется только явное
@source "путь";Добавляет файлы или каталог к сканированию@source "../ui-kit/dist";
@source not "путь";Исключает файлы из сканирования@source not "./src/legacy";
@source inline("классы");Генерирует классы, которых нет в коде@source inline("underline");
@theme { … }Объявляет токены темы--color-brand-500: …;
@theme inline { … }Подставляет значение токена прямо в утилитудля семантических тем
@layer components { … }Ваш CSS, который утилиты могут переопределить—
@utility имя { … }Своя утилита (урок 15)@utility card-surface { … }
@custom-variant имя (…);Свой вариант (уроки 12–13)@custom-variant dark (&:where(.dark, .dark *));

Пространства имён темы

ПеременнаяЧто порождаетПример утилиты
--color-*Цветовые утилитыbg-brand-500, text-brand-500
--spacingБазовый шаг всей шкалы отступовp-4, gap-2, mt-8
--spacing-*Именованный размерp-huge
--font-*Семейства шрифтовfont-sans
--text-*Размеры текстаtext-sm
--radius-*Скругленияrounded-lg
--shadow-*Тениshadow-sm
--breakpoint-*Брейкпоинты (варианты)tablet:flex
--container-*Ширины контейнеровmax-w-md
--ease-*, --animate-*Кривые и анимацииease-out, animate-spin
Полные таблицы значений по умолчанию — в справочниках «Шкалы» и «Палитра».

Правила именования токенов

  • Имя начинается с пространства имён: --color-, --text-, …
  • Дальше — произвольное имя: --color-brand-500, --color-ink.
  • --color-*: initial; очищает всё пространство имён.
  • Токены доступны и как обычные переменные: var(--color-brand-500).