Vuetify предоставляет набор инструментов для управления текстом, которые позволяют создавать аккуратные и читаемые интерфейсы без необходимости писать большое количество кастомного CSS. В основе лежат утилиты текста, которые покрывают управление размером, весом, выравниванием, обрезкой и цветом текста.
Vuetify использует систему классов, обозначающую размер
текста через префикс text- и ключевые размеры:
text-h1 … text-h6 – имитация заголовков
HTML с соответствующей типографикой.text-subtitle-1 и text-subtitle-2 – для
подзаголовков и второстепенной информации.text-body-1 и text-body-2 – основной
текст.text-caption – мелкий вспомогательный текст, обычно для
подписей.text-overline – текст для верхнего регистра, часто
используется в карточках или навигации.Пример использования:
<div class="text-h4">Заголовок уровня H4</div>
<div class="text-body-1">Основной текст страницы</div>
<div class="text-caption">Подпись к изображению</div>
Для управления горизонтальным выравниванием текста применяются классы:
text-left – выравнивание по левому краю.text-center – центрирование.text-right – выравнивание по правому краю.text-justify – выравнивание по ширине.Эти классы удобно использовать для компонентов v-card,
v-list и других контейнеров:
<v-card class="text-center">
<v-card-title>Центрированный заголовок</v-card-title>
<v-card-text class="text-justify">
Текст внутри карточки будет распределён по ширине блока, создавая аккуратный вид.
</v-card-text>
</v-card>
Vuetify предоставляет утилиты для жирности и наклона текста:
font-weight-light – лёгкий шрифт.font-weight-regular – стандартный.font-weight-medium – чуть более заметный.font-weight-bold – жирный текст.text-italic – курсив.Эти классы можно комбинировать с размерами и цветами:
<div class="text-body-1 font-weight-bold text-italic">
Важный акцентированный текст
</div>
Для контроля длинного текста Vuetify предлагает классы:
text-truncate – обрезка текста с добавлением
многоточия, если текст не помещается в одну строку.text-no-wrap – запрещает перенос текста, оставляя его в
одной строке.text-wrap – принудительный перенос текста.Пример обрезки текста:
<div class="text-truncate" style="max-width: 200px;">
Очень длинный текст, который не помещается в одну строку
</div>
Классы для управления регистром текста:
text-uppercase – переводит весь текст в верхний
регистр.text-lowercase – переводит весь текст в нижний
регистр.text-capitalize – делает первую букву каждого слова
заглавной.Использование:
<div class="text-uppercase font-weight-medium">верхний регистр</div>
<div class="text-capitalize">каждое слово с заглавной буквы</div>
Vuetify интегрирован с системой цветов Material Design, позволяя легко применять цвета к тексту:
text-[color]-[lightness]primary, secondary,
success, error, warning,
info, grey.text-primary,
text-primary--lighten-2,
text-error--darken-3.Пример использования:
<div class="text-success">Текст с цветом успеха</div>
<div class="text-error--darken-1">Текст с цветом ошибки</div>
Vuetify позволяет комбинировать несколько классов одновременно, создавая богатую типографику без кастомного CSS:
<v-card class="pa-4">
<v-card-title class="text-h5 font-weight-bold text-center text-primary">
Заголовок карточки
</v-card-title>
<v-card-text class="text-body-2 text-justify text-secondary">
Подробное описание, которое красиво распределено по ширине блока.
</v-card-text>
<v-card-actions>
<div class="text-caption text-uppercase font-weight-medium text-info">
Подпись к действию
</div>
</v-card-actions>
</v-card>
Эта практика обеспечивает максимальную гибкость и позволяет сохранять единообразие дизайна на всей платформе.
Vuetify поддерживает адаптивные классы, позволяя менять размер текста на разных устройствах:
text-[size]-[breakpoint]text-h4 text-h5-md text-h6-sm Это означает, что
на больших экранах текст будет h4, на средних –
h5, на маленьких – h6.<div class="text-h3 text-h5-md text-h6-sm">
Адаптивный заголовок
</div>
Большинство компонентов Vuetify, таких как v-btn,
v-list-item, v-toolbar, поддерживают классы
текста напрямую, что позволяет управлять стилем текста без
вложенного CSS:
<v-btn class="text-uppercase font-weight-bold text-white">
Нажми меня
</v-btn>
<v-list-item>
<v-list-item-title class="text-body-1 font-weight-medium text-primary">
Элемент списка
</v-list-item-title>
</v-list-item>
Текстовые утилиты Vuetify тесно интегрированы с системой тем, позволяя автоматически подстраиваться под светлую или тёмную тему приложения. Классы цвета и фонового текста изменяют оттенки в зависимости от текущей темы, что сохраняет читаемость и визуальную гармонию.
Эта система утилит текста делает Vuetify мощным инструментом для создания визуально последовательных и адаптивных интерфейсов, минимизируя необходимость ручного написания CSS и обеспечивая совместимость с Material Design.