试一试
grid-row-end: auto;
grid-row-end: 3;
grid-row-end: -1;
grid-row-end: span 3;
<section class="default-example" id="default-example">
<div class="example-container">
<div class="transition-all" id="example-element">One</div>
<div>Two</div>
<div>Three</div>
</div>
</section>
.example-container {
border: 1px solid #c5c5c5;
display: grid;
grid-template-columns: 1fr 1.5fr 1fr;
grid-template-rows: repeat(3, minmax(40px, auto));
grid-gap: 10px;
width: 200px;
}
.example-container > div {
background-color: rgb(0 0 255 / 0.2);
border: 3px solid blue;
}
#example-element {
background-color: rgb(255 0 200 / 0.2);
border: 3px solid rebeccapurple;
}
语法
css
/* Keyword value */
grid-row-end: auto;
/* <custom-ident> values */
grid-row-end: some-grid-area;
/* <integer> + <custom-ident> values */
grid-row-end: 2;
grid-row-end: some-grid-area 4;
/* span + <integer> + <custom-ident> values */
grid-row-end: span 3;
grid-row-end: span some-grid-area;
grid-row-end: 5 some-grid-area span;
/* Global values */
grid-row-end: inherit;
grid-row-end: initial;
grid-row-end: revert;
grid-row-end: revert-layer;
grid-row-end: unset;
值
auto-
是一个关键字,表示该属性对网格项的放置不作任何贡献,表示自动放置、自动跨度或默认跨度为
1。 <custom-ident>-
如果存在名称为“<custom-ident>-end”的命名线,它将贡献第一条这样的线到网格项的放置。
注意:命名的网格区域会自动生成这种形式的隐式命名线,因此指定
grid-row-end: foo;将选择该命名网格区域的结束边缘(除非在此之前明确指定了另一条名为foo-end的线)。否则,这将被视为指定了整数
1和<custom-ident>。<custom-ident>不能取span和auto值。 <integer> && <custom-ident>?-
将第 n 条网格线贡献给网格项的放置。如果给出负整数,它会反向计数,从显式网格的结束边缘开始。
如果名称作为 <custom-ident> 给出,则只计算具有该名称的线。如果具有该名称的线不足,则为了查找此位置,所有隐式网格线都被假定为具有该名称。
<integer>值0是无效的。 span && [ <integer> || <custom-ident> ]-
为网格项的放置贡献一个网格跨度,使得网格项的网格区域的行结束边缘距离起始边缘有 n 条线。
如果给定了一个名称作为 <custom-ident>,则只计算具有该名称的线。如果具有该名称的线不足,则为了计算此跨度,显式网格在与搜索方向相对应的侧面的所有隐式网格线都假定具有该名称。
如果省略 <integer>,则默认为
1。负整数或 0 无效。
正式定义
正式语法
grid-row-end =
<grid-line>
<grid-line> =
auto |
<custom-ident> |
[ [ <integer [-∞,-1]> | <integer [1,∞]> ] && <custom-ident>? ] |
[ span && [ <integer [1,∞]> || <custom-ident> ] ]
示例
设置网格项的行结束
HTML
html
<div class="wrapper">
<div class="box1">One</div>
<div class="box2">Two</div>
<div class="box3">Three</div>
<div class="box4">Four</div>
<div class="box5">Five</div>
</div>
CSS
css
.wrapper {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-auto-rows: 100px;
}
.box1 {
grid-column-start: 1;
grid-column-end: 4;
grid-row-start: 1;
grid-row-end: 3;
}
.box2 {
grid-column-start: 1;
grid-row-start: 3;
grid-row-end: 5;
}
结果
规范
| 规范 |
|---|
| CSS 网格布局模块 Level 2 # line-placement |
浏览器兼容性
加载中…