小程序建议使用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. codeforce C. Success Rate

    写完这道题目才发现自己对二分的理解太浅了 这题是典型的利用二分“假定一个问题可行并求最优解” 二分是通过不断缩小区间来缩小解的范围,最终得出解的算法 我们定义一个c(x) 表示判断函数 如果对任意y& ...

  2. 12 Django之Cookie和Session

    一.什么是Cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接 ...

  3. Js中去除数组中重复元素的6种方法

    方法一: Array.prototype.method1 = function(){ var arr=[]; //定义一个临时数组 for(var i = 0; i < this.length; ...

  4. var正在声明变量

    var正在声明变量也可以直接分配一个变量,而不在JS中声明它,但是这种变量在默认情况下是全局的.<!-/->是HTML中的注释,在JS中不起作用.它只是用来忽略无法识别脚本的浏览器的脚本内 ...

  5. 绑定css样式,点击高亮

    <div class="flex-lay" style="color:#999"> <div bindtap="changeType ...

  6. 跨平台编译ceres for Android

    折腾了几乎一天,记录一下. 最大的坑是官网给出的 1.进入ceres源代码目录下的jni目录 2.EIGEN_PATH="指向eigen库目录,即包含EIGEN文件夹的那个文件夹” ndk- ...

  7. Linux系统目录结构和文件基本属性

    一.Linux系统目录结构 二.Linux 文件基本属性 三.touch stat tar 命令 一.Linux系统目录结构 不同颜色文件的含义: inux 文件颜色的含义,蓝色代表目录,绿色代表可执 ...

  8. 实现单点登录功能的思路以及kafka同步数据

    单点登录以及用户数据同步思路与方案 当公司业务分布于多个子系统时, 同一用户在A系统注册,即可在其他所有关联系统使用, 并支持登录A系统后,自动在其他系统登录,退出同理. 在A平台修改通用的用户数据( ...

  9. Vue学习日记(四)——Vue状态管理vuex

    前言 先说句前话,如果不是接触大型项目,不需要有多个子页面,不使用vuex也是完全可以的. 说实在话,我在阅读vuex文档的时候,也很难以去理解vuex,甚至觉得没有使用它我也可以.但是直到我在项目碰 ...

  10. 返回vector指针案例

    void prog1_static(void) { int pos = 9; // elem will hold the element's value vector<int> *elem ...