Тёмная тема и подвал
Страница готова в светлых цветах. Теперь её тёмная версия и, наконец, подвал.
Напомним, как работает тёмная тема на этой странице: в style.css есть строка @custom-variant dark (&:where(.dark, .dark *));, поэтому классы с dark: действуют, когда у элемента html есть класс dark. Кнопка 🌙 в шапке добавляет и убирает его маленьким скриптом в конце страницы. Нажимайте её в предпросмотре и по ходу работы проверяйте тёмную версию.
- Пары цветов. Каждому светлому фону — тёмный, а каждому тёмному тексту — светлый: например,
bg-white dark:bg-stone-800для блоков на странице сdark:bg-stone-900иtext-stone-600 dark:text-stone-300для приглушённых текстов. - Тени на тёмном фоне почти не видны. Вместо них блоки выделяются более светлым фоном.
- Более светлые оттенки основного цвета лучше читаются на тёмном фоне, например
dark:text-brand-400для логотипа. Оранжевые кнопки с белым текстом можно оставить как есть. - Полупрозрачные фоны остаются полупрозрачными:
dark:bg-stone-900/90.
Проверки включают тёмную тему сами: на мгновение они добавляют класс dark элементу html, сравнивают цвета, а затем снова убирают его.
Задание
- 1
Задайте
bodyтёмный фон и светлый цвет текста в тёмной теме, напримерdark:bg-stone-900 dark:text-stone-100. - 2
Задайте каждому элементу со светлым фоном тёмный фон в тёмной теме: шапке, hero-блоку, карточкам кошек, шагам, обоим блокам в разделе «Контакты», кнопке 🌙 и всему остальному, у чего светлый фон. Поля формы — на очереди. Сделайте светлее и приглушённые тексты.
- 3
Задайте полям формы тёмный фон и в тёмной теме, например
dark:bg-stone-900, и более тёмную рамку, напримерdark:border-stone-600. - 4
Наконец, подвал: задайте ему внутренние отступы и цвет фона или линию сверху (
border-t), которая отделяет его от страницы, напримерbg-stone-800 px-4 py-10 text-center text-sm text-stone-300. Проверьте его в обоих режимах.