Компонент v-parallax используется для создания эффектов
параллакса на веб-страницах, когда фоновое изображение перемещается
медленнее относительно переднего плана при прокрутке. Этот приём придаёт
интерфейсу глубину и динамичность без использования сложного
JavaScript.
<v-parallax
src="https://cdn.vuetifyjs.com/images/parallax/material.jpg"
height="500"
>
<v-layout
column
align-center
justify-center
class="white--text"
>
<h1 class="display-2 font-weight-bold">Пример параллакса</h1>
<h4>Используем Vuetify для создания эффекта глубины</h4>
</v-layout>
</v-parallax>
Ключевые параметры:
src – URL изображения для фона.height – высота параллакса в пикселях.alt – альтернативный текст для изображения (важно для
SEO и доступности).lazy-src – облегчённый вариант изображения для
предварительной загрузки, что улучшает производительность.disabled – если установлен, параллакс отключается и
изображение ведёт себя как обычное фоновое.v-parallax может содержать любые элементы Vuetify или
стандартные HTML-элементы. Для центрирования контента чаще используют
v-layout с директивами align-center и
justify-center.
Пример с кнопкой и текстом:
<v-parallax
src="https://cdn.vuetifyjs.com/images/parallax/material2.jpg"
height="600"
>
<v-layout
column
align-center
justify-center
class="white--text"
>
<h2 class="headline mb-3">Добро пожаловать</h2>
<v-btn color="primary" dark large>Начать</v-btn>
</v-layout>
</v-parallax>
Вложенный контент остаётся на переднем плане, а изображение сдвигается медленнее при прокрутке, создавая визуальный эффект движения слоёв.
Для сложных лендингов можно использовать несколько параллаксов, чередуя их с обычными секциями.
<v-parallax src="image1.jpg" height="400"></v-parallax>
<section class="py-12">
<v-container>
<h3>Секция с текстом</h3>
<p>Описание продукта или услуги.</p>
</v-container>
</section>
<v-parallax src="image2.jpg" height="500"></v-parallax>
Рекомендации по производительности:
lazy-src для крупных изображений.Vuetify автоматически задаёт стандартную скорость движения фона. Для более тонкой настройки можно использовать CSS-трансформации через классы или стилевые директивы.
<v-parallax
src="image.jpg"
height="500"
class="custom-parallax"
></v-parallax>
<style>
.custom-parallax .v-parallax__image-container {
transform: translate3d(0, 0, 0) scale(1.1);
}
</style>
Это позволяет увеличивать или уменьшать эффект движения изображения относительно прокрутки.
Параллакс отлично сочетается с:
v-toolbar – создаёт эффект
фиксированной навигации поверх параллакса.v-card – карточки на переднем плане
создают контраст с движущимся фоном.v-container и v-layout –
управляют позиционированием текста и элементов.Пример:
<v-parallax src="image3.jpg" height="550">
<v-container fill-height>
<v-layout
align-center
justify-center
column
>
<v-card class="pa-5" outlined>
<h3>Текст на карточке</h3>
<p>Контент поверх параллакса.</p>
</v-card>
</v-layout>
</v-container>
</v-parallax>
На мобильных устройствах эффект параллакса может негативно
сказываться на производительности. Vuetify позволяет отключать параллакс
через проп disabled или использовать упрощённые версии
изображений.
<v-parallax
src="image.jpg"
height="400"
:disabled="$vuetify.breakpoint.smAndDown"
></v-parallax>
Здесь параллакс отключается на маленьких экранах, сохраняя плавность работы приложения.
v-parallaxv-parallax — мощный инструмент для визуальных эффектов,
который интегрируется с системой сеток и компонентов Vuetify. Основное
внимание уделяется:
lazy-src.Эффективное использование этих принципов позволяет создавать динамичные интерфейсы с визуальной глубиной без сложного программирования.