Tailwind CSS Grid Row Start / End

2022-08-08 10:07 更新

Grid Row Start / End

用于控制在网格行中元素的大小和放置方式的功能类。

Class
Properties
row-auto grid-row: auto;
row-span-1 grid-row: span 1 / span 1;
row-span-2 grid-row: span 2 / span 2;
row-span-3 grid-row: span 3 / span 3;
row-span-4 grid-row: span 4 / span 4;
row-span-5 grid-row: span 5 / span 5;
row-span-6 grid-row: span 6 / span 6;
row-span-full grid-row: 1 / -1;
row-start-1 grid-row-start: 1;
row-start-2 grid-row-start: 2;
row-start-3 grid-row-start: 3;
row-start-4 grid-row-start: 4;
row-start-5 grid-row-start: 5;
row-start-6 grid-row-start: 6;
row-start-7 grid-row-start: 7;
row-start-auto grid-row-start: auto;
row-end-1 grid-row-end: 1;
row-end-2 grid-row-end: 2;
row-end-3 grid-row-end: 3;
row-end-4 grid-row-end: 4;
row-end-5 grid-row-end: 5;
row-end-6 grid-row-end: 6;
row-end-7 grid-row-end: 7;
row-end-auto grid-row-end: auto;

跨行

使用 ​row-span-{n}​ 功能类使一个元素跨越 n 行。


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

起始与结束线

使用 ​row-start-{n}​ 和 ​row-end-{n}​ 功能类,使元素以第 n 条网格线为起点或终点。这些功能类也可以与 ​row-span-{n}​ 功能类结合使用,来跨越特定数量的行。

请注意,CSS 网格线从 1 开始,而不是 0,所以 3 行网格中的全高元素将从第 1 条网格线开始,第 4 条网格线结束。


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

响应式

要在特定的断点处控制元素行的放置方式,可以在任何现有的 grid-row 功能类前添加 ​{screen}:​ 前缀。例如,使用 ​md:row-span-3​ 来仅在中等尺寸及以上的屏幕上应用 ​col-span-3​ 功能类。

<div class="grid grid-rows-3 ...">
  <div class="row-span-3 md:row-span-3 ..."></div>
</div>

关于 Tailwind 的响应式设计功能的更多信息,请查看 响应式设计 文档。

自定义

默认情况下,Tailwind 包含用于处理具有多达 6 个显式行的网格的网格行实用程序。您可以通过自定义 Tailwind 主题配置的 ​gridRow​、​gridRowStart ​和 ​gridRowEnd ​部分来更改、添加或删除这些。

为了创建更多的 ​row-{value}​ 功能类来直接控制 ​grid-row​ 简写属性,请自定义 Tailwind 主题配置的 ​gridRow ​部分。

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

我们在内部将其用于 ​row-span-{n}​ 功能。请注意,因为这直接配置了 ​grid-row​ 速记属性,所以我们直接在值名中包含了 ​span ​这个词,而不是自动加入到类名中。这意味着您可以自由地添加您想做的任何事情—它们不只是 ​span ​功能。

要添加新的 ​row-start-{n}​ 功能类,请使用 Tailwind 主题配置的 ​gridRowStart ​部分。

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

要添加新的 ​row-end-{n}​ 功能类,请使用 Tailwind 主题配置的 ​gridRowEnd ​部分。

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

在 主题自定义文档 中了解更多关于自定义默认主题的信息。

变体

默认情况下,只为 grid-row 功能生成响应式变体。

您可以通过修改 ​tailwind.config.js​ 文件中 ​variants ​部分的 ​gridRow​、​gridRowStart ​和 ​gridRowEnd ​属性来控制为 grid-row 功能生成哪些变体。

  // tailwind.config.js
  module.exports = {
    variants: {
      // ...
     gridRow: ['responsive', 'hover'],
     gridRowStart: ['responsive', 'hover'],
     gridRowEnd: ['responsive', 'hover'],
    }
  }

在 配置变体文档 中了解更多关于配置变体的信息。

禁用

如果您不打算在您的项目中使用 grid-row 功能,您可以通过在配置文件的 ​corePlugins​ 部分将 ​gridRow​, ​gridRowStart ​和 ​gridRowEnd ​属性设置为 ​false ​来完全禁用它们:

  // tailwind.config.js
  module.exports = {
    corePlugins: {
      // ...
     gridRow: false,
     gridRowStart: false,
     gridRowEnd: false,
    }
  }


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号