Краткая справка

Класс
Свойства
row-autogrid-row: auto;
row-span-1grid-row: span 1 / span 1;
row-span-2grid-row: span 2 / span 2;
row-span-3grid-row: span 3 / span 3;
row-span-4grid-row: span 4 / span 4;
row-span-5grid-row: span 5 / span 5;
row-span-6grid-row: span 6 / span 6;
row-span-7grid-row: span 7 / span 7;
row-span-8grid-row: span 8 / span 8;
row-span-9grid-row: span 9 / span 9;
row-span-10grid-row: span 10 / span 10;
row-span-11grid-row: span 11 / span 11;
row-span-12grid-row: span 12 / span 12;
row-span-fullgrid-row: 1 / -1;
row-start-1grid-row-start: 1;
row-start-2grid-row-start: 2;
row-start-3grid-row-start: 3;
row-start-4grid-row-start: 4;
row-start-5grid-row-start: 5;
row-start-6grid-row-start: 6;
row-start-7grid-row-start: 7;
row-start-8grid-row-start: 8;
row-start-9grid-row-start: 9;
row-start-10grid-row-start: 10;
row-start-11grid-row-start: 11;
row-start-12grid-row-start: 12;
row-start-13grid-row-start: 13;
row-start-autogrid-row-start: auto;
row-end-1grid-row-end: 1;
row-end-2grid-row-end: 2;
row-end-3grid-row-end: 3;
row-end-4grid-row-end: 4;
row-end-5grid-row-end: 5;
row-end-6grid-row-end: 6;
row-end-7grid-row-end: 7;
row-end-8grid-row-end: 8;
row-end-9grid-row-end: 9;
row-end-10grid-row-end: 10;
row-end-11grid-row-end: 11;
row-end-12grid-row-end: 12;
row-end-13grid-row-end: 13;
row-end-autogrid-row-end: auto;

Основы использования

Составные строки

Используйте утилиты row-span-{n}, чтобы сделать элемент охватывающим n строк.

01
02
03
<div class="grid grid-rows-3 grid-flow-col gap-4">
  <div class="row-span-3 ...">01</div>
  <div class="col-span-2 ...">02</div>
  <div class="row-span-2 col-span-2 ...">03</div>
</div>

Начало и окончание линии

Используйте утилиты row-start-{n} и row-end-{n}, чтобы сделать начало или конец элемента на линии сетки nth. Их также можно комбинировать с утилитами row-span-{n} для охвата определенного количества строк.

Обратите внимание, что линии сетки CSS начинаются с 1, а не с 0, поэтому элемент во всю высоту в трехстрочной сетке будет начинаться со строки 1 и заканчиваться на строке 4.

01
02
03
<div class="grid grid-rows-3 grid-flow-col gap-4">
  <div class="row-start-2 row-span-2 ...">01</div>
  <div class="row-end-3 row-span-2 ...">02</div>
  <div class="row-start-1 row-end-4 ...">03</div>
</div>

Применяя условно

Tailwind позволяет условно применять служебные классы в разных состояниях с помощью модификаторов вариантов. Например, используйте hover:row-span-4, чтобы применять утилиту row-span-4 только при hover.

<div class="row-span-3 hover:row-span-4">
  <!-- ... -->
</div>

Полный список всех доступных модификаторов состояния смотрите в документации Наведение, фокус и другие состояния.

Контрольные точки и медиа-запросы

Вы также можете использовать модификаторы вариантов для таргетинга на медиа-запросы, такие как реагирующие контрольные точки, темный режим, предпочтения с уменьшенным движением и многое другое. Например, используйте md:row-span-4, чтобы применить утилиту row-span-4 только на экранах среднего размера и выше.

<div class="row-span-3 md:row-span-4">
  <!-- ... -->
</div>

Чтобы узнать больше, ознакомьтесь с документацией по адаптивному дизайну, темному режиму и другим модификаторам медиазапросов.


Использование пользовательских значений

Настройка вашей темы

По умолчанию Tailwind включает в себя утилиты для работы с сетками, содержащими до 6 явных строк. Вы можете настроить эти значения, отредактировав theme.gridRow, theme.extend.gridRow, theme.gridRowStart, theme.extend.gridRowStart, theme.gridRowEnd, and theme.extend.gridRowEnd в вашем файле tailwind.config.js.

Для создания дополнительных утилит row-{value}, которые напрямую управляют сокращенным свойством grid-row, настройте раздел gridRow в конфигурации Вашей темы Tailwind:

tailwind.config.js
module.exports = {
  theme: {
    extend: {
      gridRow: {
        'span-16': 'span 16 / span 16',
      }
    }
  }
}

Мы используем это внутренне для наших утилит row-span-{n}. Обратите внимание, что, поскольку это настраивает сокращенное свойство grid-row напрямую, мы включаем слово span непосредственно в имя значения, оно не автоматически вставляется в имя класса. Это означает, что вы можете добавлять сюда записи, которые делают все, что захотите - они не должны быть просто утилитами span.

Чтобы добавить новые утилиты row-start-{n}, используйте раздел gridRowStart конфигурации Вашей темы Tailwind:

tailwind.config.js
module.exports = {
  theme: {
    extend: {
      gridRowStart: {
        '8': '8',
        '9': '9',
        '10': '10',
        '11': '11',
        '12': '12',
        '13': '13',
      }
    }
  }
}

Чтобы добавить новые утилиты row-end-{n}, используйте раздел gridRowEnd конфигурации Вашей темы Tailwind:

tailwind.config.js
module.exports = {
  theme: {
    extend: {
      gridRowEnd: {
        '8': '8',
        '9': '9',
        '10': '10',
        '11': '11',
        '12': '12',
        '13': '13',
      }
    }
  }
}

Дополнительные сведения о настройке темы по умолчанию смотрите в документации настройка темы.

Произвольные значения

Если вам нужно использовать одноразовое grid-row/grid-row-start/grid-row-end value, которое не имеет смысла включать в вашу тему, используйте квадратные скобки, чтобы сгенерировать свойство на лету, используя любое произвольное значение.

<div class="row-[span_16_/_span_16]">
  <!-- ... -->
</div>

Узнайте больше о поддержке произвольных значений в документации по произвольным значениям.