小程序布局方式

小程序view支持为Block和flex两种布局方式,所有默认都是block布局方式

block布局方式

<!--index.wxml-->
<view>
  <view style="background-color:red ;">1</view>
 <view style="background-color:aqua ;">2</view>
   <view style="background-color:blue ;">3</view>
​
</view>

flex布局方式

要使用 flex 布局的话需要显式的声明:display:flex; 接下来我们就给上面的布局加上样式,使box1、box2、box3三个view能横向排列。

<!--index.wxml-->
<view class="cont">
  <view style="background-color:red ;">box1</view>
 <view style="background-color:aqua ;">box2</view>
   <view style="background-color:blue ;">box3</view>
​
</view>
//横向布局
.cont{
  display: flex;
}

 

flex布局种类

首先我们不管是横向布局和竖向布局,要设置属性 flex-direction ,它有4个可选值(默认为row):

  • row:从左到右的水平方向为主轴

  • row-reverse:从右到左的水平方向为主轴

  • column:从上到下的垂直方向为主轴

  • column-reverse:从下到上的垂直方向为主轴

flex布局种类

justify-content属性

这个属性指的是主轴方向上的子元素的布局方式,它有5个可选值:

flex-start:主轴起点对齐(默认值) flex-end:主轴结束点对齐 center:在主轴中居中对齐 space-between:两端对齐,除了两端的子元素分别靠向两端的容器之外,其他子元素之间的间隔都相等 space-around:每个子元素之间的距离相等,两端的子元素距离容器的距离也和其它子元素之间的距离相同 这里的主轴指的是父元素中的flex-direction属性指定的元素

img

align-items属性

这个属性指的是侧轴方向上的子元素的布局方式,这里的侧轴指的是父元素中的flex-direction属性指定的元素方向的垂直的方向,它有5个可选值:

stretch 填充整个容器,当元素未设置侧轴方向的长度时,充满父元素,如设置了侧轴方向长度,则以子元素设置的长度为准(默认值) flex-start 侧轴的起点对齐 (这里我们手动设置下子 view 的高度,来看的明显一些) flex-end 侧轴的终点对齐 center 在侧轴中居中对齐 baseline 以子元素的第一行文字对齐

img

flex-wrap 属性

这个属性用于控制子元素 是否换行,有3个值可选:

  • nowrap:不换行(默认)

  • wrap:换行

  • wrap-reverse:换行,第一行在最下面

    nowrap(默认):不换行。

    img

    wrap:换行,第一行在上方。

    img

    wrap-reverse`:换行,第一行在下方。

    img

猜你喜欢