grid-area

描述

适用于:网格元素

CSS 属性 grid-area 是一种对于 grid-row-start、grid-column-start、grid-row-end 和 grid-column-end 的简写,通过基线(line),跨度(span)或没有(自动)的网格放置在 grid row 中指定一个网格项的大小和位置,继而确定 grid area 的边界。

语法

/* Keyword values */
grid-area: auto;
grid-area: auto / auto;
grid-area: auto / auto / auto;
grid-area: auto / auto / auto / auto;

/* <custom-ident> values */
grid-area: some-grid-area;
grid-area: some-grid-area / another-grid-area;

/* <integer> && <custom-ident>? values */
grid-area: some-grid-area 4;
grid-area: some-grid-area 4 / 2 another-grid-area;

/* span && [ <integer> || <custom-ident> ] values */
grid-area: span 3;
grid-area: span 3 / span some-grid-area;
grid-area: 2 span / another-grid-area span;

/* Global values */
grid-area: inherit;
grid-area: initial;
grid-area: unset;

示例

在下面的例子中,有一个网格容器包含两个网格项目,我用 grid-area 属性命名它们,然后用 grid-template-areas 把它们放在网格上。这将创建两个网格区域,一个覆盖四个网格单元格,另外一个覆盖两个。

<div class="wrapper">
   <div class="item1">Item</div>
   <div class="item2">Item</div>
</div>
.wrapper {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-template-rows: 100px 100px;
    grid-template-areas:
            "a a b"
            "a a b";
}
.item1 {
    grid-area: a;
}
.item2 {
    grid-area: b;
}