flex布局在做前端的时候十分的方便快捷,这里学习了一下分享给大家
flex( flexible box:弹性布局盒模型),是2009年w3c提出的一种可以简洁、快速弹性布局的属性。主要思想是给予容器控制内部元素高度和宽度的能力。目前已得到以下浏览器支持:
简单解释一下概念图,就是说flex支持横向布局和纵向布局,然后有可以分为正向和反向
概念图微信小程序 View 支持两种布局方式:Block 和 Flex
默认为block,所以使用flex时需要进行显示声明。
display:flex;
然后做一个小demo演示一下,这里是最初的代码,每一块都会进行分行
<!--index.wxml-->
<view class="main">
<view class="item1">1</view>
<view class="item2">2</view>
<view class="item3">3</view>
</view>
/*index.wxss*/
.main {
width: 100%;
background-color: #fff;
}
.item1 {
background-color: red;
height: 100rpx;
width: 100rpx;
}
.item2 {
background-color: blue;
height: 100rpx;
width: 100rpx;
}
.item3 {
background-color: green;
height: 100rpx;
width: 100rpx;
}
未使用flex布局的效果图
然后修改一下wxss文件,加上使用flex布局的声明
/*index.wxss*/
.main {
width: 100%;
background-color: #fff;
display:flex;
}
.item1 {
background-color: red;
height: 100rpx;
width: 100rpx;
}
.item2 {
background-color: blue;
height: 100rpx;
width: 100rpx;
}
.item3 {
background-color: green;
height: 100rpx;
width: 100rpx;
}
使用flex布局的效果图
可以发现在使用flex布局后,每一块之间的分行消失了。
属性一
flex-direction
flex-direction有4个可选值:
- row:从左到右的水平方向为主轴
- row-reverse:从右到左的水平方向为主轴
- column:从上到下的垂直方向为主轴
- column-reverse:从下到上的垂直方向为主轴
在使用flex布局的css出加上flex-direction
.main {
width: 100%;
background-color: #fff;
display: flex;
flex-direction: row;
}
效果图
属性二
justify-content
justify-content有5个可选属性值
- flex-start:主轴起点对齐(默认值)
- flex-end:主轴结束点对齐
- center:在主轴中居中对齐
- space-between:两端对齐,除了两端的子元素分别靠向两端的容器之外,其他子元素之间的间隔都相等
- space-around:每个子元素之间的距离相等,两端的子元素距离容器的距离也和其它子元素之间的距离相同
在使用flex布局的css出加上flex-direction
.main {
width: 100%;
background-color: #fff;
display: flex;
flex-direction: row;
justify-content:center;
}
属性三
** align-items**
- stretch 填充整个容器(默认值)
- flex-start 侧轴的起点对齐 (这里我们手动设置下子 view 的高度,来看的明显一些)
- flex-end 侧轴的终点对齐
- center 在侧轴中居中对齐
- baseline 以子元素的第一行文字对齐
用flex布局可以很好地很快捷的排布整个页面布局,祝大家开发愉快!
网友评论