РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗jsnuPmStInr 45 of 84 menu
◀ ▶

Введение в стилизацию в Nuxt

В Vue мы уже задаём вид блоков прямо в файле компонента: цвет кнопки, отступы карточки, размер заголовка на одной странице. Так удобно оформлять то, что относится только к этому фрагменту разметки и не должно повторяться на всём сайте.

У реального проекта есть и другой слой стилей. Один и тот же фон страницы, шрифт в тексте, цвет ссылок в меню и оформление шапки должны совпадать на главной, в каталоге и на странице контактов. Если дублировать эти правила в каждом файле pages и в макете, любая смена палитры превращается в правку десятков мест.

Для таких повторяющихся правил в Nuxt используют отдельный глобальный файл стилей. В нём описывают базовый вид body, общие классы для шапки и навигации из app/layouts, типовые отступы и цвета ссылок. Подключив файл один раз в конфигурации, мы получаем единый стиль для всего приложения, а страницы остаются сосредоточены на своём содержимом.

Глобальные стили хорошо сочетаются с макетом по умолчанию и меню из NuxtLink: каркас сайта рисуется один раз, а классы из общей таблицы стилей задают его внешний вид. Локальные блоки style в компонентах по-прежнему подходят для деталей, которые не нужно разносить по всему проекту.

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

Все примеры опираются на уже знакомую структуру: страницы в app/pages, оболочка в app/layouts/default.vue, корень в app/app.vue с NuxtLayout и NuxtPage. Так проще увидеть, как общие стили влияют на каждый адрес при обычном npm run dev.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить