开始

介绍—-框架简介—-

https://uniapp.dcloud.io/tutorial/syntax-css.html#flex-%E5%B8%83%E5%B1%80
image.png

image.png

image.png

  1. <view class="box">
  2. <view class="box-item">
  3. </view>
  4. <view class="box-item">
  5. </view>
  6. <view class="box-item">
  7. </view>
  8. <view class="box-item">
  9. </view>
  10. </view>

image.png

  1. .box{
  2. height: 500upx;
  3. width: 100%;
  4. border: 1upx solid #CCCCCC;
  5. }

image.png

  1. .box-item{
  2. background: #007AFF;
  3. color: #FFFFFF;
  4. height: 200upx;
  5. width: 200upx;
  6. line-height: 200upx;
  7. font-size: 30upx;
  8. font-weight: bold;
  9. text-align: center;
  10. }

已经超出了布局范围了
image.png
使用奇偶选择器
image.png

  1. /* 奇数 */
  2. .box-item:nth-of-type(odd) {
  3. background: #007AFF;
  4. }
  5. /* 偶数 */
  6. .box-item:nth-of-type(even) {
  7. background: #09bb07;
  8. }

image.png

开始使用flex布局

让所有的元素在同一行显示了。
image.png
增加两个元素
image.png
默认是水平方向的排列。
image.png

  1. <view class="box">
  2. <view class="box-item">1</view>
  3. <view class="box-item">2</view>
  4. <view class="box-item">3</view>
  5. <view class="box-item">4</view>
  6. <view class="box-item">5</view>
  7. <view class="box-item">6</view>
  8. </view>

换行

换行
image.png
超出了会挤到下面。
image.png
返过来换行。
image.png

水平方向,平均分布

注释,剩下2个
image.png
只剩下两个,怎么让他占满。
image.png
image.png

  1. justify-content: center;

image.png
两端对齐
image.png

  1. justify-content: space-between;

默认挤到左边
image.png
挤到右边
image.png

垂直居中

垂直居中。
image.png

image.png
行高去掉
image.png
去掉行高,只保留子元素的高度
image.png
元素内部 水平垂直居中了
image.png
容器底部。
image.png
水平,垂直方向居中
image.png
放开注释,元素3
image.png
从上到下的排列
image.png
下面会空出来一点空间。
image.png
垂直居中
image.png

image.png

注释全放开。6个元素
image.png
都注释掉,先让他默认水平方向的。
image.png
默认一行,所有的元素都会被压缩
image.png

不被压缩的属性

有时候不希望被压缩。0表示不被压缩。
image.png
image.png
比如把元素改为300
image.png

宽度不设置,只设置高度

image.png

image.png
把item的

不填充了挤压的很小。
image.png
让这两个元素平均分配。
宽度设置为50% 这是一种方式
image.png
image.png

如果是3个元素。设置宽度为33% 就会3个元素平均分配了。
image.png

使用flex:1

image.png
让他们平均都占一份
image.png

中间的是两边的两倍

中间的是2, 其他的都是1
image.png

  1. .box-item:nth-of-type(1){
  2. flex:1;
  3. }
  4. .box-item:nth-of-type(2){
  5. flex:2;
  6. }
  7. .box-item:nth-of-type(3){
  8. flex:1;
  9. }

image.png

image.png
也是可以的
image.png

align-self

不大常用

image.png

image.png

结束