Grid

基本用法

columns 表示容器分为多少列, width 表示子元素占据多少列,middle 表示子元素垂直居中,center 表示子元素水平居中
2/6
2/6
2/6
1/3
1/3
1/1
Edit Code

子元素从上到下排列

使用 flow="column" 可以使子元素从上到下排列(默认从左到右). 这是 css 属性 grid-auto-flow的映射
2/6
2/6
2/6
1/3
1/3
1/1
Edit Code

位置偏移

您可以使用lefttop 属性也设置偏移量,对应 CSS属性中的grid-column-startgrid-row-start
Top Left
Top Right
Middle
Bottom Left
Bottom Right
Edit Code

圣杯布局

可自定义columnsrows,实现不同的布局效果。其中 1fr 表示占据剩余空间,minmax(45px,auto) 表示子元素最小高度为 45px,最大高度为元素本身高度(元素内容可能会撑开高度)

Header

Menu
Content
Ads
Footer
Edit Code

Areas 关键字

可使用 areas 属性实现自定义布局区域。可以不使用 widthheightCell 组件上,而是 area 属性,对应 CSS 中的 grid-area

Header

Menu
Content
Ads
Footer
Edit Code

水平对齐

可以使用 justifyContent 来修改行的水平对齐。
start
A
B
C
end
A
B
C
center
A
B
C
space-between
A
B
C
Edit Code

垂直对齐

可以使用 alignContent 来修改行的垂直对齐。
start
A
B
C
end
A
B
C
center
A
B
C
space-between
A
B
C
Edit Code

响应式流动布局

grid 布局支持响应式。例如使用grid-template-rows: repeat(auto-fit, minmax(N, 1fr)) 表示每列元素 最小宽度为 N,最大宽度为 1fr1fr 指的是剩余空间的一等分。如果 1fr 小于 N,那么元素就会换行。
A
B
C
D
E
F
Edit Code

响应式断点布局

grid 布局支持响应式的。例如使用grid-template-rows: repeat(auto-fit, minmax(N, 1fr)) 表示每列元素 最小宽度为 N,最大宽度为 1fr1fr 指的是剩余空间的一等分。如果 1fr 小于 N,那么元素就会换行。
A
B
C
D
E
F
Edit Code