Vuetify использует систему сетки, основанную на Flexbox, которая
позволяет гибко управлять расположением колонок и их порядком внутри
строки (v-row). Основной инструмент управления порядком
колонок — это свойства order и responsive-версии
order-{breakpoint}-{value}.
orderКаждая колонка (v-col) имеет по умолчанию
order: 0. Порядок колонок внутри строки определяется
числовыми значениями свойства order. Колонки с меньшими
значениями будут располагаться раньше, чем с большими. Например:
<v-row>
<v-col cols="4" order="2">
Колонка 1
</v-col>
<v-col cols="4" order="1">
Колонка 2
</v-col>
<v-col cols="4" order="3">
Колонка 3
</v-col>
</v-row>
В данном случае визуально первым элементом будет Колонка 2, затем Колонка 1, и последней — Колонка 3, несмотря на порядок объявления в шаблоне.
Vuetify поддерживает responsive-версии свойства order,
что позволяет изменять порядок колонок в зависимости от ширины экрана.
Синтаксис:
order-{breakpoint}-{value}
Где breakpoint может быть:
xs — очень маленькие устройстваsm — маленькие устройстваmd — средние устройстваlg — большие устройстваxl — очень большие устройстваПример адаптивного порядка:
<v-row>
<v-col cols="12" md="4" order-md="3">
Колонка A
</v-col>
<v-col cols="12" md="4" order-md="1">
Колонка B
</v-col>
<v-col cols="12" md="4" order-md="2">
Колонка C
</v-col>
</v-row>
На маленьких экранах (xs, sm) порядок
колонок будет естественным (A → B → C), а на средних и больших экранах
(md и выше) порядок изменится на B → C →
A.
Для более тонкого управления можно использовать отрицательные
значения order. Это позволяет переместить колонку в начало
строки независимо от других:
<v-col cols="4" order="-1">
Первая колонка
</v-col>
<v-col cols="4">
Вторая колонка
</v-col>
<v-col cols="4">
Третья колонка
</v-col>
В этом примере колонка с order="-1" будет первой,
остальные сохранят стандартный порядок 0.
Порядок колонок можно комбинировать с такими свойствами строки как:
justify — управление горизонтальным выравниваниемalign — управление вертикальным выравниваниемreverse — изменение направления потоковПример использования:
<v-row justify="space-between" align="center" class="flex-row-reverse">
<v-col cols="3" order="2">Колонка 1</v-col>
<v-col cols="3" order="1">Колонка 2</v-col>
<v-col cols="3" order="3">Колонка 3</v-col>
</v-row>
Сочетание flex-row-reverse и order
позволяет создавать сложные макеты с нестандартным расположением
колонок.
order: по возможности, лучше менять порядок через
разметку, чтобы код оставался предсказуемым.v-show/v-if для
мобильных версий: иногда проще скрыть колонку на малых экранах,
чем менять её порядок.Система порядка колонок в Vuetify предоставляет мощный инструмент для создания гибких и адаптивных макетов, где визуальное расположение элементов можно изменять без перестройки HTML-разметки.