Grid-система в Quasar представляет собой мощный инструмент для
построения адаптивных интерфейсов. Она основана на 12-колоночной
сетке, что позволяет легко управлять расположением элементов на
экране в зависимости от ширины устройства. Ключевые компоненты для
работы с сеткой — это <q-layout>,
<q-page>,
<q-page-container>, а для самой
сетки — <q-row> и
<q-col>.
<q-row> —
контейнер для строк<q-row> используется для создания горизонтальных
строк, в которых располагаются колонки (<q-col>).
Основные свойства:
align — вертикальное выравнивание
(start, center, end,
stretch).justify — горизонтальное распределение
(start, center, end,
between, around, evenly).no-gutters — удаление отступов между
колонками.Пример:
<q-row align="center" justify="between">
<q-col cols="4">Колонка 1</q-col>
<q-col cols="4">Колонка 2</q-col>
<q-col cols="4">Колонка 3</q-col>
</q-row>
В этом примере три колонки равномерно распределены по строке с центровкой по вертикали.
<q-col> —
управление колонками<q-col> управляет шириной и порядком отображения
контента. Основные свойства:
cols — количество колонок (1–12).offset — смещение колонки вправо на
указанное количество колонок.order — порядок отображения
колонок.xs, sm, md,
lg, xl — адаптивная ширина для разных
размеров экранов.Пример адаптивной сетки:
<q-row>
<q-col xs="12" sm="6" md="4">Контент 1</q-col>
<q-col xs="12" sm="6" md="4">Контент 2</q-col>
<q-col xs="12" sm="12" md="4">Контент 3</q-col>
</q-row>
Здесь колонки занимают всю ширину на мобильных (xs=12),
по половине на планшетах (sm=6) и треть экрана на десктопе
(md=4).
Quasar позволяет легко управлять margin и padding через утилитарные классы:
q-mt-*, q-mb-*, q-ml-*,
q-mr-* — внешние отступы (top, bottom, left, right).q-pa-*, q-pt-*, q-pb-* —
внутренние отступы (padding).* заменяется числом от 0 до
24 (единицы Quasar).Пример:
<q-col cols="6" class="q-mt-md q-pa-sm">
Контент с отступами
</q-col>
Свойство cols может быть задано в
процентах через :style или через специальные классы Quasar.
Также можно комбинировать фиксированные и гибкие колонки, используя
комбинацию cols и grow:
<q-row>
<q-col cols="4">Фиксированная</q-col>
<q-col grow>Гибкая</q-col>
</q-row>
Колонка с grow займет оставшееся пространство
строки.
Quasar предоставляет возможность управлять видимостью элементов в зависимости от размера экрана через классы:
hidden-xs-only — скрыть на мобильных.hidden-sm-and-down — скрыть на планшетах и меньше.hidden-md-and-up — скрыть на больших экранах.Пример:
<q-col cols="6" class="hidden-sm-and-down">Только на десктопе</q-col>
Для сложных макетов можно вкладывать <q-row>
внутрь <q-col>:
<q-row>
<q-col cols="6">
<q-row>
<q-col cols="6">Вложенная 1</q-col>
<q-col cols="6">Вложенная 2</q-col>
</q-row>
</q-col>
<q-col cols="6">Колонка 2</q-col>
</q-row>
Это позволяет создавать многоуровневую сетку без потери адаптивности.
xs,
sm, md, lg, xl.align и justify.Эта система обеспечивает полную управляемость интерфейсом и позволяет создавать как простые страницы, так и сложные адаптивные приложения на базе Quasar.