This page is being translated; the original is shown (Русский ).
Промежутки между элементами
Классы gap-*, col-gap-* и row-gap-* задают промежутки между элементами
сетки или флекс-контейнера по шкале отступов: сразу по обеим осям или по
одной. Берите их вместо внешних отступов у элементов: промежуток есть только
между соседями и не появляется у краёв контейнера.
Пример
Шкала
Сетка из четырёх колонок в две строки. Подпись над образцом — класс
контейнера.
HTML wrap_text Wrap source lines content_copy Copy
<div class ="grid grid-col-1 sm:grid-col-2 gap-4 color-on-surface" >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-0</code >
<div class ="grid grid-col-4 gap-0 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-1/4</code >
<div class ="grid grid-col-4 gap-1/4 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-1/3</code >
<div class ="grid grid-col-4 gap-1/3 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-1/2</code >
<div class ="grid grid-col-4 gap-1/2 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-1</code >
<div class ="grid grid-col-4 gap-1 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-2</code >
<div class ="grid grid-col-4 gap-2 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-3</code >
<div class ="grid grid-col-4 gap-3 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-4</code >
<div class ="grid grid-col-4 gap-4 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-5</code >
<div class ="grid grid-col-4 gap-5 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-6</code >
<div class ="grid grid-col-4 gap-6 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-7</code >
<div class ="grid grid-col-4 gap-7 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-8</code >
<div class ="grid grid-col-4 gap-8 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
</div >
Оси
col-gap-* задаёт промежуток между колонками, row-gap-* — между строками.
Вместе с gap-* класс оси уточняет одну ось. Во флекс-контейнере с переносом
промежутки работают так же.
HTML wrap_text Wrap source lines content_copy Copy
<div class ="grid grid-col-1 sm:grid-col-2 gap-4 color-on-surface" >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >col-gap-4</code >
<div class ="grid grid-col-4 col-gap-4 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >row-gap-4</code >
<div class ="grid grid-col-4 row-gap-4 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-1 col-gap-6</code >
<div class ="grid grid-col-4 gap-1 col-gap-6 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >flex flex-wrap gap-2</code >
<div class ="flex flex-wrap gap-2 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >Метка 1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >Метка 2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >Метка 3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >Метка 4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >Метка 5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >Метка 6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >Метка 7</span >
</div >
</div >
</div >
Ширина экрана
С префиксом ширины класс действует от указанной ширины и шире. Меняйте ширину
окна просмотра: промежутки растут с ширины md и ещё раз с ширины lg.
HTML wrap_text Wrap source lines content_copy Copy
<div class ="flex flex-col gap-3 color-on-surface" >
<div class ="flex flex-col gap-1" >
<code class ="text-1/2 color-on-surface-variant" >gap-1/4 md:gap-2 lg:gap-6</code >
<div class ="grid grid-col-4 gap-1/4 md:gap-2 lg:gap-6 p-1 border border-dashed border-outline radius-ui" >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >1</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >2</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >3</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >4</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >5</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >6</span >
<span class ="p-1 bg-primary-container color-on-primary-container radius-ui" >7</span >
<span class ="p-1 bg-tertiary-container color-on-tertiary-container radius-ui" >8</span >
</div >
</div >
</div >
Классы
Класс
CSS
Значения
gap-{значение}
gap: var(--sf-space-{значение})
0, 1/4, 1/3, 1/2, 1, 2, 3, 4, 5, 6, 7, 8
g-{значение}
gap: var(--sf-space-{значение})
0, 1/4, 1/3, 1/2, 1, 2, 3, 4, 5, 6, 7, 8
col-gap-{значение}
column-gap: var(--sf-space-{значение})
0, 1/4, 1/3, 1/2, 1, 2, 3, 4, 5, 6, 7, 8
gap-x-{значение}
column-gap: var(--sf-space-{значение})
0, 1/4, 1/3, 1/2, 1, 2, 3, 4, 5, 6, 7, 8
g-x-{значение}
column-gap: var(--sf-space-{значение})
0, 1/4, 1/3, 1/2, 1, 2, 3, 4, 5, 6, 7, 8
row-gap-{значение}
row-gap: var(--sf-space-{значение})
0, 1/4, 1/3, 1/2, 1, 2, 3, 4, 5, 6, 7, 8
gap-y-{значение}
row-gap: var(--sf-space-{значение})
0, 1/4, 1/3, 1/2, 1, 2, 3, 4, 5, 6, 7, 8
g-y-{значение}
row-gap: var(--sf-space-{значение})
0, 1/4, 1/3, 1/2, 1, 2, 3, 4, 5, 6, 7, 8
Условия (что это ): ширина экрана — sm:, md:, lg:, xl:, xxl:; состояния — нет. Например: sm:gap-0.
Классы и переменные собраны из CSS выпуска и обновляются вместе с ним.
Переменные
Классы читают эти токены темы. Изменённый токен меняет все места, где он используется, — классы, компоненты и тему; задайте его в теме проекта, а не на отдельном элементе. Все токены — на странице Все токены .
Переменная
Значение по умолчанию
--sf-space-0
0
--sf-space-1/4
0.25rem; от ширины lg: var(--sf-a4)
--sf-space-1/3
0.5rem; от ширины lg: var(--sf-a8)
--sf-space-1/2
0.5rem; от ширины lg: 0.75rem
--sf-space-1
var(--sf-b2); от ширины lg: var(--sf-b6)
--sf-space-2
var(--sf-b6); от ширины lg: var(--sf-c0)
--sf-space-3
var(--sf-b6); от ширины lg: var(--sf-c2)
--sf-space-4
var(--sf-c2); от ширины lg: var(--sf-c6)
--sf-space-5
var(--sf-c6); от ширины lg: var(--sf-d0)
--sf-space-6
var(--sf-c6); от ширины lg: var(--sf-d2)
--sf-space-7
var(--sf-d0); от ширины lg: var(--sf-d6)
--sf-space-8
var(--sf-d2); от ширины lg: var(--sf-e0)
В CSS косую черту в имени экранируют: var(--sf-space-1\/4).
Применение
Шкала
Ступени берут значения из токенов --sf-space-*. С ширины lg большинство
ступеней крупнее.
Класс
До lg
От lg
gap-0
0
0
gap-1/4
4px
4px
gap-1/3
8px
8px
gap-1/2
8px
12px
gap-1
12px
16px
gap-2
16px
20px
gap-3
16px
24px
gap-4
24px
32px
gap-5
32px
40px
gap-6
32px
48px
gap-7
40px
64px
gap-8
48px
80px
Значения приведены при 1rem = 16px. До ширины lg соседние ступени
1/3 и 1/2, 2 и 3, 5 и 6 совпадают.
Общий промежуток и отдельная ось
В одном условии класс оси сильнее общего: gap-1 col-gap-6 даёт между
строками ступень 1, между колонками — ступень 6, в каком бы порядке ни
стояли классы. Не ставьте два класса одной оси с разными значениями, например
col-gap-2 col-gap-6.
HTML wrap_text Wrap source lines content_copy Copy
<div class ="grid grid-col-3 gap-2 row-gap-4" >
<!-- колонки через ступень 2, строки через ступень 4 -->
</div >
Другие имена
g-* — то же, что gap-*.
gap-x-* и g-x-* — то же, что col-gap-*.
gap-y-* и g-y-* — то же, что row-gap-*.
В разметке пишите gap-*, col-gap-* и row-gap-*.
Ограничения
Промежуток есть только между элементами. Отступ от краёв контейнера задают
классы внутреннего отступа p-*.
Отрицательных значений нет. Промежутки не зависят от направления письма и
одинаковы при dir="rtl".
col-gap-* задаёт column-gap и действует также на промежуток между
колонками многоколоночного текста.
См. также
Предыдущая Одновременное выравнивание по двум осям Следующая Выравнивание содержимого по основной оси