JGuang

栅格

Grid · Arco Design

交互预览
npm install @arco-design/web-react@2.66.18

栅格 Grid

栅格可以有效的保证页面的一致性、逻辑性、加强团队协作和统一。

安装

npm install @arco-design/web-react@2.66.18

在入口引入 @arco-design/web-react/dist/css/arco.css,用 ConfigProvider 设置语言。React 19 项目还需在入口最先引入 @arco-design/web-react/es/_util/react-19-adapter,否则 Message、Modal 等命令式 API 无法渲染。

示例

  • 基本用法:展示了最基本的 24 等分应用。
  • 栅格偏移:指定 offset 可以对栅格进行平移操作。
  • 栅格排序:指定 push 或者 pull 可以对栅格进行排序。
  • 区块间隔:通过在 Row 上指定 gutter 可以增加栅格的区域间隔。
  • 水平布局:通过 justify 来进行水平布局。
  • 垂直布局:通过 align 来进行垂直布局。
  • 排序:通过 order 来进行元素排序。
  • 响应式布局:预置六种响应尺寸, 分别为 xs, sm, md, lg, xl, xxl。
  • 其他属性的响应式:span, offset, order, pull, push 属性可以内嵌到 xs, sm, md, lg, xl, xxl 对象中使用。 比如 xs={8} 相当于 xs={{ span: 8 }}。
  • Flex 用法:通过设置 Col 组件的 flex 属性,可以任意配置 flex 布局。
  • Grid 布局:基于 CSS 的 Grid 布局实现的布局组件,支持折叠,并且可以设置后缀节点,后缀节点会显示在一行的结尾。
  • 响应式的 Grid 布局:Grid 组件的响应式配置格式为 { xs: 1, sm: 2, md: 3, lg: 4, xl: 5, xxl: 6, xxxl: 7 }。

示例来自 Arco Design 官方仓库(MIT),固定在 npm 2.66.18 对应的提交;部分示例使用在线图片或上传地址,预览中网络请求被禁用。

API

Row

参数名描述类型默认值版本
div开启这个选项 <Row> 和 <Col> 都会被当作 div 而不会附带任何 Grid 相关的类和样式boolean--
align竖直对齐方式 ( align-items )'start' | 'center' | 'end' | 'stretch'start-
justify水平对齐方式 (justify-content)'start' | 'center' | 'end' | 'space-around' | 'space-between'start-
className节点类名string | string[]--
gutter栅格间隔,单位是px 栅格间隔。可传入响应式对象写法 { xs: 4, sm: 6, md: 12},传入数组 [ 水平间距, 垂直间距 ] 来设置两个方向。GridRowGutter | Array<GridRowGutter>0vertical gutter in 2.5.0
style节点样式CSSProperties--

Col

参数名描述类型默认值版本
offset栅格左侧的间隔格数,间隔内不可以有栅格number--
order对元素进行排序number--
pull对元素进行排序number-2.20.0
push对元素进行排序number-2.20.0
span栅格占位格数number24-
className节点类名string | string[]--
flex设置 flex 布局属性FlexType-2.26.0
lg>= 992px 响应式栅格number | { [key: string]: any }--
md>= 768px 响应式栅格number | { [key: string]: any }--
sm>= 576px 响应式栅格number | { [key: string]: any }--
style节点样式CSSProperties--
xl>= 1200px 响应式栅格number | { [key: string]: any }--
xs< 576px 响应式栅格number | { [key: string]: any }--
xxl>= 1600px 响应式栅格number | { [key: string]: any }--
xxxl>= 2000px 响应式栅格number | { [key: string]: any }-2.40.0

Grid

参数名描述类型默认值
collapsed是否折叠booleanfalse
collapsedRows折叠时显示的行数number1
className节点类名string | string[]-
colGap列与列之间的间距number | ResponsiveValue0
cols每一行展示的列数number | ResponsiveValue24
rowGap行与行之间的间距number | ResponsiveValue0
style节点样式CSSProperties-

GridItem

参数名描述类型默认值
suffix是否是后缀元素booleanfalse
className节点类名string | string[]-
offset左侧的间隔格数number | ResponsiveValue0
span跨越的格数number | ResponsiveValue1
style节点样式CSSProperties-

ResponsiveValue

参数名描述类型默认值
lg>= 992px 响应式配置number-
md>= 768px 响应式配置number-
sm>= 576px 响应式配置number-
xl>= 1200px 响应式配置number-
xs< 576px 响应式配置number-
xxl>= 1600px 响应式配置number-
xxxl>= 2000px 响应式栅格number-

GridRowGutter

export type GridRowGutter =
  | number
  | Partial<Record<GridResponsiveBreakpoint, number>>;

FlexType

export type FlexType = string | number | "auto" | "none";