「小程序JAVA实战」小程序的flex布局(22)
转自:https://idig8.com/2018/08/09/xiaochengxu-chuji-22/
之前已经把小程序的框架说完了,接下来说说小程序的组件,在说组件之前,先说说布局吧。源码:https://github.com/limingios/wxProgram.git 中的No.9

小程序的flex布局
- 小程序建议使用flex布局进行排版
>其实div+css的方式也可以,只是官方建议使用flex布局的方式 - flex 就是一个盒装弹性布局
- flex是一个容器,所有的子元素都是它的成员。
整个是一个大盒子,大盒子里面有很多的小块a,b,c,d,e,f都是他的成员,针对其中的成员可以增加对应的样式,可以看出来a,b,d是比较大的,c是最小的,我们可以通过样式控制它们的大小,我们也可以通过order的方式控制他们的位置顺序,一般正常的咱们的页面都有顺序的,可以通过布局的order属性,把顺序给展示出来。
- 定义布局display:flex
- flex 容器的属性
flex-direction:排列方向
flex-wrap:换行规则
justify-content:对齐方式
flex-direction
容器内的方向,方向可以从上到下,从左到右。
- row[flex-direction 默认布局方式]
从左到右
- row-reverse
从右到左
- column
从上到下
- column-reverse
从下到上
- 演示
flex-direction.wxml
<!--flex-direction.wxml-->
<view class="container-row">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:20rpx;'>
</view>
<view class="container-row-reverse">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:20rpx;'>
</view>
<view class="container-column">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:20rpx;'>
</view>
<view class="container-column-reverse">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
flex-direction.wxss
.container-row{
display: flex;
flex-direction: row;
}
.container-row-reverse{
display: flex;
flex-direction: row-reverse;
}
.container-column{
display: flex;
flex-direction: column;
}
.container-column-reverse{
display: flex;
flex-direction: column-reverse;
}
.size{
width: 200rpx;
height: 150rpx;
}
.a {
background: red;
}
.b {
background: yellow;
}
.c {
background: blue;
}
.d {
background: green;
}
.e {
background: gold;
}

flex-wrap
容器换行的属性,分别是不换行,换行,逆向换行
- nowrap[flex-nowwrap 默认不换行]
不换行
- wrap
换行
- wrap-reverse
逆向换行
- 演示
container-wrap.wxml
<!--container-wrap.wxml-->
<view class="container-nowrap">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:100rpx;'>
欢迎访问我的个人网站:idig8.com
公众号:编程坑太多
</view>
<view class="container-wrap">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:100rpx;'>
欢迎访问我的个人网站:idig8.com
公众号:编程坑太多
</view>
<view class="container-wrap-reverse">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
flex-wrap.wxss
.container-nowrap{
display: flex;
flex-wrap: nowrap;
}
.container-wrap{
display: flex;
flex-wrap: wrap;
}
.container-wrap-reverse{
display: flex;
flex-wrap: wrap-reverse;
}
.size{
width: 200rpx;
height: 150rpx;
}
.a {
background: red;
}
.b {
background: yellow;
}
.c {
background: blue;
}
.d {
background: green;
}
.e {
background: gold;
}

flex-wrap
靠那个方向对齐的一个属性
- flex-start[flex-start 默认左对齐]
左对齐
- flex-end
向右对齐
- center【使用最多的方式】
居中对齐
- space-around
在成员元素周围包裹空格
- space-between
在成员元素之前留空白
- 演示
justify-content.wxml
<!justify-content.wxml-->
<view class="container-flex-start">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:100rpx;'>
欢迎访问我的个人网站:idig8.com
公众号:编程坑太多
</view>
<view class="container-flex-end">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:100rpx;'>
欢迎访问我的个人网站:idig8.com
公众号:编程坑太多
</view>
<view class="container-center">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:100rpx;'>
欢迎访问我的个人网站:idig8.com
公众号:编程坑太多
</view>
<view class="container-space-around">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:100rpx;'>
欢迎访问我的个人网站:idig8.com
公众号:编程坑太多
</view>
<view class="container-space-between">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
justify-content.wxss
.container-flex-start{
display: flex;
justify-content: flex-start;
}
.container-flex-end{
display: flex;
justify-content: flex-end;
}
.container-center{
display: flex;
justify-content: flex-center;
}
.container-space-around{
display: flex;
justify-content: space-around;
}
.container-space-between{
display: flex;
justify-content: space-between;
}
.size{
width: 50rpx;
height: 150rpx;
}
.a {
background: red;
}
.b {
background: yellow;
}
.c {
background: blue;
}
.d {
background: green;
}
.e {
background: gold;
}

flex成员元素的样式设置
顺序和比例分配
- order
通过数字对flex容器内部的成员设置显示的顺序
- flex
设置每个成员所占行级的显示比例
- 演示
order-flex.wxml
<!--order-flex.wxml-->
<view class="container">
<view class='size a'>a</view>
<view class='size b'>b</view>
<view class='size c'>c</view>
<view class='size d'>d</view>
<view class='size e'>e</view>
</view>
<view style='width:100%;height:100rpx;'>
欢迎访问我的个人网站:idig8.com
公众号:编程坑太多
</view>
order-flex.wxss
.container{
display: flex;
justify-content: flex-start;
}
.size{
height: 150rpx;
}
.a {
background: red;
order:5;
flex:4;
}
.b {
background: yellow;
order:1;
flex:1;
}
.c {
background: blue;
order:3;
flex:2;
}
.d {
background: green;
order:32;
flex:3;
}
.e {
background: gold;
order:4;
flex:2;
}

PS:flex布局基本说完了,基本也给各种场景下的属性含义直观的方式进行了演示,但是老铁虽然我搞完了,但是你们如果想学小程序还是勤加练习的,好脑子不如烂笔头对吧!
「小程序JAVA实战」小程序的flex布局(22)的更多相关文章
- 「小程序JAVA实战」小程序的留言和评价功能(70)
转自:https://idig8.com/2018/10/28/xiaochengxujavashizhanxiaochengxudeliuyanhepingjiagongneng69/ 目前小程序这 ...
- 「小程序JAVA实战」小程序的举报功能开发(68)
转自:https://idig8.com/2018/09/25/xiaochengxujavashizhanxiaochengxudeweixinapicaidancaozuo66-2/ 通过点击举报 ...
- 「小程序JAVA实战」小程序的个人信息作品,收藏,关注(66)
转自:https://idig8.com/2018/09/24/xiaochengxujavashizhanxiaochengxudegerenxinxizuopinshoucangguanzhu65 ...
- 「小程序JAVA实战」小程序的关注功能(65)
转自:https://idig8.com/2018/09/24/xiaochengxujavashizhanxiaochengxudeguanzhugongneng64/ 在个人页面,根据发布者个人和 ...
- 「小程序JAVA实战」小程序的视频点赞功能开发(62)
转自:https://idig8.com/2018/09/24/xiaochengxujavashizhanxiaochengxudeshipindianzangongnengkaifa61/ 视频点 ...
- 「小程序JAVA实战」小程序的springboot后台拦截器(61)
转自:https://idig8.com/2018/09/24/xiaochengxujavashizhanxiaochengxudespringboothoutailanjieqi60/ 之前咱们把 ...
- 「小程序JAVA实战」小程序首页视频(49)
转自:https://idig8.com/2018/09/21/xiaochengxujavashizhanxiaochengxushouyeshipin48/ 视频显示的内容是视频的截图,用户的头像 ...
- 「小程序JAVA实战」小程序视频封面处理(48)
转自:https://idig8.com/2018/09/16/xiaochengxujavashizhanxiaochengxushipinfengmianchuli47/ 截图这块,在微信小程序工 ...
- 「小程序JAVA实战」小程序上传短视频(46)
转自:https://idig8.com/2018/09/14/xiaochengxujavashizhanxiaochengxushangchuanduanshipin45/ 个人信息:用户上传短视 ...
随机推荐
- Java项目中使用Log4J
Log4J下载 官网:http://logging.apache.org/log4j/ Log4J 1.2下载地址:http://logging.apache.org/log4j/1.2/downlo ...
- maven报错【Could not calculate build plan: Plugin org.apache.maven.plugins:maven-resources-plugin:2.6 or one of】
[自己的操作] (1)windows -> Preferences -> maven 的settings.xml文件中.m2的位置已经失效,更改正确后尝试 (2)pom.xml还有下面错误 ...
- apache与nginx对比优势及劣势
1.nginx相对于apache的优点:轻量级,同样起web 服务,比apache占用更少的内存及资源抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能 ...
- C#数据路接口中获取SQL数据的用法
获取一条记录 string sql = string.Format(“”); DataRow row; if (GetFirstDataRow(sql, out row)) { ...
- 【转】python 字符编码与解码——unicode、str和中文:UnicodeDecodeError: 'ascii' codec can't decode
原文网址:http://blog.csdn.net/trochiluses/article/details/16825269 摘要:在进行python脚本的编写时,如果我们用python来处理网页数据 ...
- 10.Python运行Scrapy时出现错误: ModuleNotFoundError: No module named 'win32api'
1.在命令行输入:scrapy crawl demo(demo为爬虫标识,是唯一的) 2.报错信息如下所示: 3.解决方法:https://github.com/mhammond/pywin32/re ...
- 基于IAR和STM32的uCOS-II移植
网上基于MDK的移植数不胜数,但是基于IAR的移植几乎没有,因为官方的例程就是基于IAR的,所以移植起来很简单,没人介绍,但还是得小心谨慎,一不小心就出错,对于新手来说,查找错误可不是那么容易的.IA ...
- pat1022__字符串查找
主要是对字符串的查找,为了方便并且快速的实现查找,用map会比较方便 同时如何把一个带有空格的字符串变成多个单词也有一个小技巧 char *point=book[i].keyWord;//关键词分离 ...
- 【备忘录】Golang交叉编译
Golang 支持交叉编译,在一个windows平台可以生成linux或Mac系统下的可执行文件. Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED=0 GOO ...
- Micro-PaaS(Docker+K8S)
1.概述 Docker是一种Linux容器工具集,它是为构建(Build).交付(Ship)和运行(Run)分布式应用而设计的. Kubernates:是开源的容器集群管理系统.它构建在Docker技 ...