栅格组件。
display:table;
兼容实现,但 IE9 仅支持基本的响应式布局(详情请参考 API 和 DEMO 的说明)。类似 Bootstrap 的响应式设计,预设6个响应尺寸:xxs(320px), xs(480px), s(720px), m(990px), l(1200px), xl(1500px)。
默认 Row
的宽度被设置为100%,可以通过设置 fixed
属性为 true,来让 Row
的宽度不立刻随着是视口大小变动而变动,而是在某个断点下维持固定的宽度,也可以通过设置 fixedWidth
属性为某一断点值,从而固定 Row
的宽度,不再随着视口大小变动而变动。
(不支持 IE9 浏览器)基于 Flex 的 align-items 和 align-self 属性实现,在 Row
上设置 align
属性,即可控制 Row
下面所有 Col
的垂直方向对齐方式:top(顶部对齐,默认),center(居中对齐),bottom(底部对齐),baseline(第一行文字的基线对齐),stretch(如果未设置高度或设为 auto,将占满整个容器的高度);在 Col
上设置 align
属性,可允许它与其它列不一样的对齐方式,覆盖 Row
的 align
属性。
(不支持 IE9 浏览器)基于 Flex 的 justify-content 属性实现,在 Row
上设置 justify
属性,即可行内多列水平方向对齐方式:start(左对齐,默认),center(居中对齐),end(右对齐),space-between(两端对齐,项目之间的间隔都相),space-around(两侧的间隔相等,列之间的间隔比列与左右两端的间隔大一倍)。
默认 <Row>
和 <Col>
会加上 role="row"
和 role="gridcell"
, 但是为了完美的无障碍实现, 开发者还应该在外部容器加上 role="grid"
。
参数 | 说明 | 类型 | 默认值 | 是否必填 |
---|---|---|---|---|
children | 行内容 | React.ReactNode | - | |
gutter | 列间隔 | string | number | 0 | |
wrap | 列在行中宽度溢出后是否换行 | boolean | false | |
fixed | 行在某一断点下宽度是否保持不变(默认行宽度随视口变化而变化) | boolean | false | |
fixedWidth | 固定行的宽度为某一断点的宽度,不受视口影响而变动 | BreakPoints | - | |
align | (不支持IE9浏览器)多列垂直方向对齐方式 | 'top' | 'center' | 'bottom' | 'baseline' | 'stretch' | - | |
justify | (不支持IE9浏览器)行内具有多余空间时的布局方式 | 'start' | 'center' | 'end' | 'space-between' | 'space-around' | - | |
hidden | 行在不同断点下的显示与隐藏 | boolean | string | Array<BreakPoints> | - | |
component | 指定以何种元素渲染该节点 | string | FunctionComponent<unknown> | ComponentClass<unknown> | 'div' |
参数 | 说明 | 类型 | 默认值 | 是否必填 |
---|---|---|---|---|
children | 列内容 | React.ReactNode | - | |
span | 列宽度 | string | number | - | |
fixedSpan | 固定列宽度 | string | number | - | |
offset | (不支持IE9浏览器)列偏移 | string | number | - | |
fixedOffset | (不支持IE9浏览器)固定列偏移,宽度值为20 * 栅格数<br><br>可选值:<br>1, 2, 3, ..., 28, 29, 30 | string | number | - | |
align | (不支持IE9浏览器)多列垂直方向对齐方式,可覆盖Row的align属性 | 'top' | 'center' | 'bottom' | 'baseline' | 'stretch' | - | |
hidden | 列在不同断点下的显示与隐藏 | boolean | string | Array<BreakPoints> | - | |
xxs | >=320px,响应式栅格 | string | number | PointProps | - | |
xs | >=480px,响应式栅格 | string | number | PointProps | - | |
s | >=720px,响应式栅格 | string | number | PointProps | - | |
m | >=990px,响应式栅格 | string | number | PointProps | - | |
l | >=1200px,响应式栅格 | string | number | PointProps | - | |
xl | >=1500px,响应式栅格 | string | number | PointProps | - | |
component | 指定以何种元素渲染该节点,默认为 'div' | Ele | (() => Ele) | string | 'div' |