gitweixin
  • 首页
  • 小程序代码
    • 资讯读书
    • 工具类
    • O2O
    • 地图定位
    • 社交
    • 行业软件
    • 电商类
    • 互联网类
    • 企业类
    • UI控件
  • 大数据开发
    • Hadoop
    • Spark
    • Hbase
    • Elasticsearch
    • Kafka
    • Flink
    • 数据仓库
    • 数据挖掘
    • flume
    • Kafka
    • Hive
    • shardingsphere
    • solr
  • 开发博客
    • Android
    • php
    • python
    • 运维
    • 技术架构
    • 数据库
  • 程序员网赚
  • bug清单
  • 量化投资
  • 在线查询工具
    • 去行号
    • 在线时间戳转换工具
    • 免费图片批量修改尺寸在线工具
    • SVG转JPG在线工具

微信小程序页面布局方式-flex高级布局

精品微信小程序开发门户,代码全部亲测可用

  • 首页   /  
  • 作者: east
  • ( 页面92 )
开发博客 6月 25,2018

微信小程序页面布局方式-flex高级布局

转载自https://blog.csdn.net/jasonzds/article/details/54807884

微信小程序使用flexbox容器,flexbox布局由伸缩容器和伸缩项目组成。任何一个元素都可以指定为flexbox布局,其中设为display:flex或者display:inline-flex的元素称为伸缩容器。伸缩容器的子元素称为伸缩项目,伸缩项目使用伸缩布局模型来排版。伸缩布局模型与传统的布局不一样,它按照伸缩流的方向布局。请看下面的经典图片

默认情况下,伸缩容器由两根轴组成,主轴(main)和交叉轴(cross),其中主轴的开始位置叫main start,结束位置叫main end。交叉轴的开始位置叫cross start,结束位置叫cross end 。伸缩项目的主轴上的占据空间叫main axis,在交叉轴上的占据位置叫cross axis,根据设置情况的不同。主轴既可以是水平轴,也可以是垂直轴。不论哪个轴作为主轴,默认情况下伸缩项目总是沿着主轴,从主轴开始位置到主轴结束位置进行排版,flexbox在浏览器使用需要加上各个浏览器的私有前缀,-webkit ,-moz,-ms,-o,微信小程序全部去掉前缀。

伸缩容器支持的属性有:

1,display

2,flex-direction

3,flex-wrap

4,flex-flow

5,justify-content

6,align-items

7,align-content

8,order

9,flex-grow

10,flex-basis

11,flex

12,align-self

主要介绍这几个属性

 display

该属性用来指定元素是否为伸缩容器,语法为

display:flex    |   display:inline-flex

wxml代码为:

<view class=”container”>
<view class=”sp1″>1</view>
<view class=”sp2″>2</view>
<view class=”sp3″>3</view>
<view class=”sp4″>4</view>
<view class=”sp5″>5</view>
<view class=”sp6″>6</view>
<view class=”sp7″>7</view>
<view class=”sp8″>8</view>
<view class=”sp9″>9</view>
</view>

wxss代码为

.container{
display: flex;
}

flex:用于产生块级伸缩容器

.container{
display: inline-flex;
}

inline-flex:用于产生行内级伸缩容器,

flex-direction

该属性用于指定主轴方向,语法为

flex-direction: row  | row-reverse  | column  | column-reverse

1)row水平方向从左向右

2)row-reverse水平方向从右向左

4)column伸缩容器为垂直方向,伸缩项目的排版方式为从上到下

5)column-reverse伸缩容器为垂直,伸缩项目为从下到上

flex-wrap

该属性用来指定伸缩容器的主轴线方向空间不足的情况下,是否换行以及该如何换行

flex-wrap: nowrap | wrap  | wrap-reverse

1)nowrap空间不足是也不换行

2)wrap空间不足可以换行

3) wrap-reverse空间不足可以换行,若主轴为水平轴,则换行的方向为从下到上,和wrap相反

flex-flow

该属性是flex-direction和flex-wrap属性的缩写版本,它同时指定了伸缩容器的主轴和侧轴,其默认属性为row nowrap

flex-flow: flex-direction | flex-wrap

justify-content

该属性用来定义伸缩项目沿主轴线的对齐方式

justify-content: flex-start | flex-end | center | space-between | space-around

1)flex-start伸缩项目向主轴线的起始位置靠齐

2)flex-end 伸缩项目向主轴线的结束位置对齐,

3)center伸缩项目向主轴线的中间位置靠齐

4)space-around伸缩项目会平均的分布在主轴线里,两端保留一半的空间。

5)space-between伸缩项目会平分在主轴线里,第一个伸缩项目在主轴线的开始位置,最后一个伸缩项目在主轴线的终点位置

align-items

该属性用来定义伸缩项目在伸缩容器的交叉轴上的对齐方式

align-items: flex-start | flex-end | center | baseline |  stretch;

1)flex-start伸缩项目沿交叉轴的起始位置对齐

2)flex-end沿交叉轴的结束位置对齐

3)center伸缩项目沿交叉轴的中间位置靠齐

4)baseline伸缩项目根据它们的基线对齐

5)stretch伸缩项目在交叉轴方向拉伸填充整个伸缩容器


align-content

用来调整伸缩项目出现换行后在交叉轴上的对齐方式,类似于伸缩项目在主轴上使用justify-content

align-content: flex-start | flex-end | center | space-between | space-around | stretch

1)flex-start伸缩项目向交叉的起始位置靠齐

2)flex-end伸缩项目向交叉轴的起始位置靠齐

3)center伸缩项目向交叉轴的中间位置靠齐

4)space-between伸缩项目在交叉轴中平均分布

5)space-around伸缩项目在交叉轴平均分布,且两边各有一半空间

6)strech伸缩项目将会在交叉轴上伸展以占用剩余空间

order

用于定义排列顺序,数值越小,排列越靠前,默认值为0

flex-grow

用于定义伸缩项目的放大比例,默认值0,即如果存在剩余空间,也不放大,如果所有伸缩项目的flex-grow设置为1,那么每个伸缩项目将设置为大小相等的剩余空间,如果你将其中一个flex-frow伸缩项设置为2,那么这个伸缩项目所占剩余空间是其他伸缩项目所占胜于空间的两倍

flex-shrink

该属性用来定义伸缩项目的收缩能力

flex-basis

该属性用来设置伸缩项目的基准值,剩余空间按比率进行伸缩

flex

该属性是flex-grow ,flex-shrink,flex-basis属性的缩写
flex: none | flex-grow flex-shrink flex-basis
其中第二个参数和第三个参数(flex-shrink,flex-basis)是可选参数,默认为0 1 auto
本例子sp3原属宽度为50px,当是flex:1时,该元素就会把伸缩容器的剩余空间占满,其实质上就等于felx-grow:1
该属性有两个快捷值:auto(1 1 auto)和none(0 0 auto)

align-self

用于设置单独的伸缩项目在交叉轴上的对齐方式,会覆盖默认的对齐方式
align-self: auto | flex-start | flex-end | center | baseline | stretch
1)auto
2)felx-start沿交叉轴开始位置对齐
3)flex-end沿交叉轴结束位置对齐
4)center沿交叉轴中心位置对齐
5)baseline沿交叉轴的基线对齐
6)stretch沿交叉轴方向占满伸缩容器
作者 east
开发博客 6月 25,2018

2018微信小程序开源项目整理(github)-持续更新

微信小应用示例代码(phodal/weapp-quick)
源码链接:https://github.com/phodal/weapp-quick

微信小应用地图定位demo(giscafer/wechat-weapp-mapdemo)
源码链接:https://github.com/giscafer/wechat-weapp-mapdemo

微信小应用- 掘金主页信息流(hilongjw/weapp-gold)
源码链接:https://github.com/hilongjw/weapp-gold

微信小程序(应用号)示例:微信小程序豆瓣电影(zce/weapp-demo)
源码链接:https://github.com/zce/weapp-demo

微信小程序-豆瓣电影(hingsir/weapp-douban-film)
源码链接:https://github.com/hingsir/weapp-douban-film

小程序 hello world 尝鲜(kunkun12/weapp)
源码链接:https://github.com/kunkun12/weapp

使用微信小程序开发2048游戏(sammffl/wechat-weapp-2048)
源码链接:https://github.com/sammffl/wechat-weapp-2048

微信小程序-微票(wangmingjob/weapp-weipiao)
源码链接:https://github.com/wangmingjob/weapp-weipiao

微信小程序购物车DEMO(SeptemberMaples/wechat-weapp-demo)
源码链接:https://github.com/SeptemberMaples/wechat-weapp-demo

微信小程序V2EX(jectychen/wechat-v2ex)
源码链接:https://github.com/jectychen/wechat-v2ex

微信小程序-知乎日报(myronliu347/wechat-app-zhihudaily)
源码链接:https://github.com/myronliu347/wechat-app-zhihudaily

微信小程序-公众号热门文章信息流(hijiangtao/weapp-newsapp)
源码链接:https://github.com/hijiangtao/weapp-newsapp

微信小程序版Gank客户端
源码链接:https://github.com/lypeer/wechat-weapp-gank

微信小程序集成Redux实现的Todo list
源码链接:https://github.com/charleyw/wechat-weapp-redux-todos

微信小程序-番茄时钟
源码链接:https://github.com/kraaas/timer

微信小程序项目汇总
源码链接:http://javascript.ctolib.com/cat … t-wechat-weapp.html

微信小程序版聊天室
源码链接: https://github.com/ericzyh/wechat-chat

微信小程序-HiApp
源码链接: https://github.com/BelinChung/wxapp-hiapp

小程序Redux绑定库
源码链接: https://github.com/charleyw/wechat-weapp-redux

微信小程序版微信
源码链接: https://github.com/18380435477/WeApp

小程序开发从布局开始
源码链接: https://github.com/hardog/wechat-app-flexlayout

微信小程序-音乐播放器
源码链接: https://github.com/eyasliu/wechat-app-music

微信小程序-简易计算器-适合入门
源码链接: https://github.com/dunizb/wxapp-sCalc

微信小程序-github
源码链接: https://github.com/zhengxiaowai/weapp-github

微信小程序-小熊の日记
源码链接: https://github.com/harveyqing/BearDiary

微信小程序
源码链接: https://github.com/SeaHub/PigRaising

微信小程序(WeChatMeiZhi妹子图)
源码链接:https://github.com/brucevanfdm/WeChatMeiZhi

作者 east

上一 1 … 91 92

关注公众号“大模型全栈程序员”回复“小程序”获取1000个小程序打包源码。回复”chatgpt”获取免注册可用chatgpt。回复“大数据”获取多本大数据电子书

标签

AIGC AI创作 bert chatgpt github GPT-3 gpt3 GTP-3 hive mysql O2O tensorflow UI控件 不含后台 交流 共享经济 出行 图像 地图定位 外卖 多媒体 娱乐 小程序 布局 带后台完整项目 开源项目 搜索 支付 效率 教育 日历 机器学习 深度学习 物流 用户系统 电商 画图 画布(canvas) 社交 签到 联网 读书 资讯 阅读 预订

官方QQ群

小程序开发群:74052405

大数据开发群: 952493060

近期文章

  • AUTOSAR如何在多个供应商交付的配置中避免ARXML不兼容?
  • C++thread pool(线程池)设计应关注哪些扩展性问题?
  • 各类MCAL(Microcontroller Abstraction Layer)如何与AUTOSAR工具链解耦?
  • 如何设计AUTOSAR中的“域控制器”以支持未来扩展?
  • C++ 中避免悬挂引用的企业策略有哪些?
  • 嵌入式电机:如何在低速和高负载状态下保持FOC(Field-Oriented Control)算法的电流控制稳定?
  • C++如何在插件式架构中使用反射实现模块隔离?
  • C++如何追踪内存泄漏(valgrind/ASan等)并定位到业务代码?
  • C++大型系统中如何组织头文件和依赖树?
  • 如何进行AUTOSAR模块的持续集成(CI)部署与版本控制?

文章归档

  • 2025年5月
  • 2025年4月
  • 2025年3月
  • 2025年2月
  • 2025年1月
  • 2024年12月
  • 2024年11月
  • 2024年10月
  • 2024年9月
  • 2024年8月
  • 2024年7月
  • 2024年6月
  • 2024年5月
  • 2024年4月
  • 2024年3月
  • 2023年11月
  • 2023年10月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年6月
  • 2023年5月
  • 2023年4月
  • 2023年3月
  • 2023年1月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年7月
  • 2018年6月

分类目录

  • Android (73)
  • bug清单 (79)
  • C++ (34)
  • Fuchsia (15)
  • php (4)
  • python (42)
  • sklearn (1)
  • 云计算 (20)
  • 人工智能 (61)
    • chatgpt (21)
      • 提示词 (6)
    • Keras (1)
    • Tensorflow (3)
    • 大模型 (1)
    • 智能体 (4)
    • 深度学习 (14)
  • 储能 (44)
  • 前端 (4)
  • 大数据开发 (484)
    • CDH (6)
    • datax (4)
    • doris (28)
    • Elasticsearch (15)
    • Flink (78)
    • flume (7)
    • Hadoop (19)
    • Hbase (23)
    • Hive (40)
    • Impala (2)
    • Java (71)
    • Kafka (10)
    • neo4j (5)
    • shardingsphere (6)
    • solr (5)
    • Spark (99)
    • spring (11)
    • 数据仓库 (9)
    • 数据挖掘 (7)
    • 海豚调度器 (9)
    • 运维 (33)
      • Docker (2)
  • 小游戏代码 (1)
  • 小程序代码 (139)
    • O2O (16)
    • UI控件 (5)
    • 互联网类 (23)
    • 企业类 (6)
    • 地图定位 (9)
    • 多媒体 (6)
    • 工具类 (25)
    • 电商类 (22)
    • 社交 (7)
    • 行业软件 (7)
    • 资讯读书 (11)
  • 嵌入式 (70)
    • autosar (63)
    • RTOS (1)
    • 总线 (1)
  • 开发博客 (16)
    • Harmony (9)
  • 技术架构 (6)
  • 数据库 (32)
    • mongodb (1)
    • mysql (13)
    • pgsql (2)
    • redis (1)
    • tdengine (4)
  • 未分类 (6)
  • 程序员网赚 (20)
    • 广告联盟 (3)
    • 私域流量 (5)
    • 自媒体 (5)
  • 量化投资 (4)
  • 面试 (14)

功能

  • 登录
  • 文章RSS
  • 评论RSS
  • WordPress.org

All Rights Reserved by Gitweixin.本站收集网友上传代码, 如有侵犯版权,请发邮件联系yiyuyos@gmail.com删除.