小程序建议使用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. asp.net 5.图片和验证码

    1.基本画图 //给用户创建一张图片,并且保持一张图片. //创建一个画布 , )) { //绘画布创建一个画笔 using (Graphics g = Graphics.FromImage(map) ...

  2. 服务端相关知识学习(一)之什么是zookeeper

    什么是zookeeper zookeeper是分布式协调服务,可以在分布式系统中共享配置.协调锁资源.提供命名服务那分布式协调服务又是个什么东西呢?首先我们来看“协调”是什么意思.在一个并发的环境里, ...

  3. 【转】CnBlogs自定义博客样式

    文章有一个好的排版,将能够增加阅读者对其内容的兴趣. 本文总结了如何美化博客园中文章的部分显示样式. 1.美化文章标题的显示样式 2.增添LaTex数学公式的显示 3.目录索引的显示 4.添加文章末尾 ...

  4. git创建库

    WMW@WMWGO MINGW64 /f $ cd e:               # 切换到 E 盘 WMW@WMWGO MINGW64 /e $ mkdir learngit      # 创建 ...

  5. HttpClient的GET请求(post)请求

    一.不带参数的GET请求 // 创建Httpclient对象 CloseableHttpClient httpclient = HttpClients.createDefault(); // 创建ht ...

  6. 前端imageBuffer设置图片src(后端返回二进制流图片)

    参考地址1:前端imageBuffer设置图片src(后端到前端直传buffer) 参考地址2:axios根据流生成图片 本质为buffer转base64 // 获取项目截图 getItemPic() ...

  7. js中——限制文本框输入非数字

      //先把非数字的都替换掉,除了数字和.和/             obj.value = obj.value.replace(/[^\-\d./]/g, ""); //必须保 ...

  8. python lambda表达式的两种用处

    1 用处1定义匿名函数 不带参数的: a = ") 带参数的 b = lambda x, y:x * y 2 当函数作为参数时,直接为该函数传参. def func1(m, n): retu ...

  9. python学习-数据类型

    计算机处理的数据不单纯的指数字,计算机可以处理数字.文本.音频.视频等等各种数据,下面描述的是Python中可以直接使用和处理的基本数据类型.     整数 Python可以处理任意大小的整数,跟ja ...

  10. mysql数据库: 用户管理、pymysql使用、navicat插件使用

    一.用户管理 二.pymysql增删改查 三.sql注入攻击 一.用户管理 数据安全非常重要 不可能随便分配root账户 应该按照不同开发岗位分配不同的账户和权限 mysql中 将于用户相关的数据放在 ...