# Layout 栅格布局
概述
 Layout 栅格布局,将整个屏幕宽度分为 24 单位,每个单位的大小,由当前屏幕尺寸决定。 Layout提供了fui-row和fui-col两个组件来进行行列布局。
# 支持平台
| App-vue | App-Nvue | 微信小程序 | 支付宝小程序 | 百度小程序 | 字节小程序 | QQ小程序 | H5 | PC | 快手小程序 | 钉钉小程序 | 
|---|---|---|---|---|---|---|---|---|---|---|
| ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | 
# 引入
以下介绍两种常用的引入方式。
 第一种:在页面中引用、注册
 import fuiRow from "@/components/firstui/fui-row/fui-row.vue"
import fuiCol from "@/components/firstui/fui-col/fui-col.vue"
export default {
	components:{
		fuiRow,
		fuiCol
	}
}
 1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
第二种:easycom组件规范
 传统vue组件,需要安装、引用、注册,三个步骤后才能使用组件。easycom将其精简为一步。
 First UI easycom配置请查看 快速上手。
如果不了解easycom,可先查看 官网文档 (opens new window)。
# 代码演示
部分示例演示,完整使用请参考示例程序以及文档API。
 基础布局
 通过 span 属性设置栅格占据的列数,默认值为24。
<fui-row margin-bottom="24rpx">
	<fui-col>
		<view class="fui-col__item fui-color__black"></view>
	</fui-col>
</fui-row>
<fui-row margin-bottom="24rpx">
	<fui-col :span="12">
		<view class="fui-col__item fui-color__black"></view>
	</fui-col>
	<fui-col :span="12">
		<view class="fui-col__item fui-color__yellow"></view>
	</fui-col>
</fui-row>
 1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
分栏偏移
 通过 offset 属性设置栅格左侧的间隔格数。
<fui-row marginBottom="10px">
	<fui-col :span="8">
		<view class="fui-col__item fui-color__black"></view>
	</fui-col>
	<fui-col :span="8" :offset="6">
		<view class="fui-col__item fui-color__yellow"></view>
	</fui-col>
</fui-row>
<fui-row marginBottom="10px">
	<fui-col :span="6" :offset="6">
		<view class="fui-col__item fui-color__black"></view>
	</fui-col>
	<fui-col :span="6" :offset="6">
		<view class="fui-col__item fui-color__yellow"></view>
	</fui-col>
</fui-row>
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Slots
# fui-row 组件
| 插槽名称 | 说明 | 
|---|---|
| default | 标签显示内容,内部由一个或多个fui-col组成 | 
# fui-col 组件
| 插槽名称 | 说明 | 
|---|---|
| default | 标签内显示的自定义内容 | 
# Props
# fui-row 组件
| 属性名 | 类型 | 说明 | 默认值 | 平台差异说明 | 
|---|---|---|---|---|
| isFlex | Boolean | 是否为flex布局 | false | 非nvue有效,nvue端默认为flex布局 | 
| justify | String | flex布局下的水平排列方式,可取值:start、end、center、space-around、space-between | start | - | 
| align | String | flex布局下的垂直排列方式,可取值:top、middle、bottom | top | - | 
| marginTop | String | margin-top值 | 0 | - | 
| marginBottom | String | margin-bottom值 | 0 | - | 
| gutter | Number | 栅格间隔,单位rpx | 0 | - | 
| width V1.4.0+ | String, Number | nvue如果使用span等属性,需要配置宽度,单位rpx | 750 | 仅nvue有效 | 
# fui-col 组件
| 属性名 | 类型 | 说明 | 默认值 | 平台差异说明 | 
|---|---|---|---|---|
| span | Number | 栅格占据的列数 | 24 | - | 
| offset | Number | 栅格左侧的间隔格数 | 0 | - | 
| pushLeft | Number | 栅格向右移动格数 | -1 | - | 
| pullRight | Number | 栅格向左移动格数 | -1 | - | 
| xs | Number, Object | max-width:767px 响应式栅格数或者栅格属性对象,Number时表示在此屏幕宽度下,栅格占据的列数。Object时可配置多个描述{span: 4, offset: 4} | -1 | 非nvue有效 | 
| sm | Number, Object | max-width:768px 响应式栅格数或者栅格属性对象 | -1 | 非nvue有效 | 
| md | Number, Object | max-width:992px 响应式栅格数或者栅格属性对象 | -1 | 非nvue有效 | 
| lg | Number, Object | max-width:1200px 响应式栅格数或者栅格属性对象 | -1 | 非nvue有效 | 
| xl | Number, Object | max-width:1920px 响应式栅格数或者栅格属性对象 | -1 | 非nvue有效 | 
# Events
| 事件名 | 说明 | 回调参数 | 
|---|---|---|
| - | - | - | 
 
Layout 栅格布局