小程序建议使用flex布局进行排版

  flex是一个盒装弹性布局

  flex是一个容器,所有子元素都是他的成员

  

  定义布局:display:flex

  flex容器的属性:

    一、flex-direction:排列方向

    二、flex-wrap:换行规则

    三、justify-content:对齐方式

    四、order:成员之间的显示顺序

    五、flex:成员所占屏幕的比例

一、flex-direction:排列方向

  【默认】row:从左到右行排序

  row-reverse:从右到左行排序

  colomn:从上到下列排序

  colomn-reverse:从下到上列排序

  index.html中定义五个<view>分别加上a、b、c、d、e五个文本标签,微信小程序中默认flex-direction:row

<!--index.wxml-->
Cynical丶Gary
<view class="container"> <view class='a size'>a</view>
<view class='b size'>b</view>
<view class='c size'>c</view>
<view class='d size'>d</view>
<view class='e size'>e</view> </view>

index.html

.container{
display: flex;
/* 默认从左到右排序 */
/* flex-direction: row; */
/* 从右到左排序 */
/* flex-direction: row-reverse; */
/* 从上到下排序 */
/* flex-direction: column; */
/* 从下到上排序 */
/* flex-direction: column-reverse; */ } .size{
width: 150rpx;
height: 150rpx;
} .a{
background: red;
} .b{
background: yellow;
} .c{
background: blue;
} .d{
background: green;
} .e{
background: orange;
}

index.wxss

二、flex-wrap:换行规则

  【默认】nowrap:不换行

  wrap:换行

  wrap-reverse:逆向换行

  当五个元素size超出微信小程序横向排版时(320),微信小程序默认使用flex-wrap: nowrap不换行

<!--index.wxml-->
Cynical丶Gary
<view class="container"> <view class='a size'>a</view>
<view class='b size'>b</view>
<view class='c size'>c</view>
<view class='d size'>d</view>
<view class='e size'>e</view> </view>

index.wxml

.container{
display: flex;
/* 默认不换行 */
/* flex-wrap: nowrap; */
/* 换行 */
/* flex-wrap: wrap; */
/* 逆向换行 */
/* flex-wrap: wrap-reverse; */ } .size{
width: 500rpx;
height: 150rpx;
} .a{
background: red;
} .b{
background: yellow;
} .c{
background: blue;
} .d{
background: green;
} .e{
background: orange;
}

index.wxss

三、justify-content:对齐方式

  【默认】flex-start:从左到右,向左对齐

  flex-end:从右到左,向右对齐

  center:居中对齐

  space-between:块级元素中间有空格

  space-around:让空格围绕在成员周围

  当五个元素并列排序size未超出微信小程序横向布局

<!--index.wxml-->
Cynical丶Gary
<view class="container"> <view class='a size'>a</view>
<view class='b size'>b</view>
<view class='c size'>c</view>
<view class='d size'>d</view>
<view class='e size'>e</view> </view>

index.wxml

.container{
display: flex;
/* flex-start:默认左对齐 */
/* justify-content: flex-start; */
/* flex-end:向右对齐 */
/* justify-content: flex-end; */
/* center:居中对齐 */
/* justify-content: center; */
/* space-between:块级元素中间有空格 */
/* justify-content: space-between; */
/* space-around:让空格围绕在成员周围 */
/* justify-content:space-around; */
} .size{
width: 100rpx;
height: 150rpx;
} .a{
background: red;
} .b{
background: yellow;
} .c{
background: blue;
} .d{
background: green;
} .e{
background: orange;
}

index.wxss

四、order:成员之间的显示顺序

  五个元素并列排序由order属性决定,本来d和e中order属性分别是4和5,现将order属性改为5和4,可见d和e块级元素位置进行了交换

<!--index.wxml-->
Cynical丶Gary
<view class="container"> <view class='a size'>a</view>
<view class='b size'>b</view>
<view class='c size'>c</view>
<view class='d size'>d</view>
<view class='e size'>e</view> </view>

index.wxml

.container{
display: flex; } .size{
width: 100rpx;
height: 150rpx;
} .a{
background: red;
order:;
} .b{
background: yellow;
order:;
} .c{
background: blue;
order:;
} .d{
background: green;
order:;
} .e{
background: orange;
order:;
}

index.wxss

五、flex:成员所占屏幕的比例

  当给五个块级元素a、b、c、d、e设置order为1时候,每个元素所占当行比例的1/5,当将a的order设置为3时,a元素占当行比例的3/(3+1+1+1+1),依次类推

<!--index.wxml-->
Cynical丶Gary
<view class="container"> <view class='a size'>a</view>
<view class='b size'>b</view>
<view class='c size'>c</view>
<view class='d size'>d</view>
<view class='e size'>e</view> </view>

index.wxml

.container{
display: flex; } .size{
width: 100rpx;
height: 150rpx;
} .a{
background: red;
order:;
flex:;
} .b{
background: yellow;
order:;
flex:;
} .c{
background: blue;
order:;
flex:;
} .d{
background: green;
order:;
flex:;
} .e{
background: orange;
order:;
flex:;
}

index.wxss

微信小程序_(组件)flex布局的更多相关文章

  1. 微信小程序_(组件)可拖动movable-view

    微信小程序movable-view组件官方文档 传送门 Learn 一.moveable-view组件 一.movable-view组件 direction:movable-view的移动方向,属性值 ...

  2. 微信小程序_(组件)scroll-view可滚动视图

    微信小程序scroll-view组件官方文档 传送门 提前准备:使用<view>组件制作五条撑满的横向区域 <!--index.wxml--> Cynical丶Gary < ...

  3. 微信小程序_(组件)view视图容器

    微信小程序view组件官方文档 传送门 Learn 一.hover-class属性 二.hover-start-time与hover-stay-time属性 三.hover-stop-propagat ...

  4. 微信小程序_(组件)icon、text、rich-text、progress四大基础组件

    微信小程序基础组件官方文档 传送门 Learn 一.icon图标组件 二.rich-text富文本组件 三.text文本组件 四.progress进度条组件 一.icon图标组件 type:icon的 ...

  5. 微信小程序 View:flex 布局

    微信小程序 View 支持两种布局方式:Block 和 Flex 所有 View 默认都是 block 要使用 flex 布局的话需要显式的声明: display:flex; 下面就来介绍下微信小程序 ...

  6. 微信小程序_(组件)组件基础

    (progress.text.block) 组件基础效果 官方文档:传送门 Page({ /** * 页面的初始数据 */ data: { text:"Gary 微信小程序\n", ...

  7. 微信小程序_(组件)swiper轮播图

    微信小程序swiper轮播图组件官方文档 传送门 Learn: swiper组件 一.swiper组件 indicator-dots:是否显示面板指示点[默认值false] autoplay:是否自动 ...

  8. 微信小程序_(组件)picker

    picker组件效果 官方文档:传送门 Page({ data: { array: ['美国', '中国', '巴西', '日本'], objectArray: [ { id: 0, name: '美 ...

  9. 微信小程序_(组件)canvas画布

    canvas画布效果 官方文档:传送门 Page({ canvasIdErrorCallback: function (e) { console.error(e.detail.errMsg) }, o ...

随机推荐

  1. Function(Of T) as T 泛型类型多态返回对象的实现

    Shared Function ResultT(Of T As result)(msg As String, Optional success As Boolean = False) As T Dim ...

  2. centos配置发送邮件

    邮件已经可以接收到了 CentOS下发送邮件有很多种方法,这里采用比较简单的mail客户端,配置第三方邮件服务商,例如:163.com 1.安装所用软件 yum install mailx sendm ...

  3. kali入侵服务器之后清除痕迹

    Linux清除痕迹 第一种方法: 在退出会话前直接执行: #history -r 清除当前会话的命令历史记录 第二种方法: 在vim中执行自己不想让别人看到的命令随便用vim打开一个文件 :set h ...

  4. 05 正确运行一个Go程序

    Go代码文件,程序中必须指定启动函数main() Hello.go package main //声明为main包,即可以编译成二进制程序 import "fmt" //导入fmt ...

  5. JS中的SRC

    当应用SRC属性时,首先需要创建一个JS文件.为什么不在此文件中使用<script>标记?您可以直接使用输出语句吗?我会分享我的报告一个答案 JS文件不是HTM文件,因此内部不能有HTML ...

  6. day07 类

    一.目录 1.模块 2.包 3.isinstance issubclass type 4.方法和函数 5.反射 6.约束 7.继承 8.特殊成员 9.异常处理 补充知识点 10.hashlib模块 1 ...

  7. js小功能3:一个简单的计算器功能

    html: <input type='text' id='txt1' /> <select id='select'> <option value='+'>+< ...

  8. 几种常用的java 实现反转的方法———reverse

    1.最简单的方法 public static String reverse1(String str) return new StringBuffer(str).reverse().toString() ...

  9. Python中GUI库PyQt5的安装和配置

    在使用Tkinter开发GUI程序时,发现相关文档比较少,开发起来太累.经过综合比较,决定使用PyQt这个库.下面是简单的安装步骤. 1.安装 PyQt5 : pip install PyQt5 -i ...

  10. ueditor 去掉自动跟随内容的<p><br /></p>

    //编辑器不能为空内容 if (domUtils.isEmptyNode(me.body)) { me.body.innerHTML = ''; ueditor.all.js  删除BR 如果还不行, ...