vue-h5移动Web的Flex布局

2023-09-15 23:26:22

Flex布局

Flexible布局,也就是弹性布局。
Flexible的优点是,不需要对元素设置固定的宽度和高度,元素的位置和大小也会跟着父元素或者浏览器的状态来自动适配。

同时还添加了水平居中和垂直居中的解决方案。

在页面中指定一个元素作为Flex布局,那么这个元素就是作为容器冤元素。设置如下:

.box{
	display:flex;
}

行内元素也是可以使用flex布局的。

注意:父元素设置为flex后,子元素的float、clear和vertical-align的设置就会失效。

Flex的兼容性写法

尽管有很多的浏览器已经实现了无前缀的版本,但是在系统比较旧版本的移动端设备上,只能带上前缀。

那么,我们在写代码的时候,就要考虑样式的兼容性了:

.box{
	display:-webkit-flex; // 新版本语法加前缀
	display:flex; // 新版本语法
	display:-webkit-box; // 旧版本语法
}

.children{
	-webkit-flex:1; // 新版本语法加前缀
	flex:1; // 新语法
	-webkit-box-flex:1; // 旧版本语法
}

Flex容器属性

弹性容器有两个方向:水平方向和垂直方向,弹性容器的子元素默认沿着水平方向排列。Flex容器有这些属性:

1、flex-direction

该属性决定主轴的方向;属性值如下:

  • row:表示设置主轴为水平方向,从左到右,该值为默认值
  • row-reverse:表示设置主轴为水平方向,从右到左
  • column:表示设置主轴为垂直方向,从上到下
  • column:表示设置主轴为垂直方向,从上到下

2、flex-wrap

该属性决定如果一条轴线排列时内容超出,那么该如何换行;属性值如下:

  • nowrap:表示单行显示,不换行,该值为默认值
  • wrap:表示内容超出容器宽度时换行显示,第一行在上方
  • wrap-reverse:表示内容超出容器宽度时换行显示,但是从下往上开始,也就是第一行在最下方,最后一行在最上方

3、flex-flow

该属性是flex-direction和flex-wrap的缩写,即一个属性可以实现设置两个属性的功能。

4、justify-content

该属性决定了主轴方向上子元素的对齐和分布方式;属性值如下:

  • flex-start:表示主轴方向左对齐,该值为默认值
  • flex-end:表示主轴方向右对齐
  • center:表示主轴方向居中对齐
  • space-between:表示主轴方向两端对齐,子元素之间的间隔都相等,多余的空白间距只在子元素中间区域分配
  • space-around:表示主轴方向距容器两侧的间隔相等

5、align-items

该属性决定了交叉轴方向上子元素的对齐和分布方式;属性值如下:

  • flex-start:表示子元素在容器交叉轴方向顶部对齐
  • flex-end:表示子元素在容器交叉轴方向底部对齐
  • center:表示子元素在容器交叉轴方向居中对齐
  • baseline:表示所有子元素都相对第一行文字的基线(字母x的下边缘)对齐。
  • stretch:表示子元素拉伸,如果主轴是水平方向,且该子元素未设置高度或者把高度设置为auto,那么子元素将会占满整个容器的高度;如果主轴是垂直方向,且该子元素未设置宽度或者把宽度设置为auto,那么子元素将会占满整个容器的宽度;如果设置了高度和宽度,那么按照设置值显示子元素。该值为默认值。

6、align-content

该属性决定了多根轴线的对齐方式。如果容器只有一根轴线,那么该属性不起作用;属性值为:

  • flex-start:表示子元素在容器交叉轴方向顶部对齐
  • flex-end:表示子元素在容器交叉轴方向底部对齐
  • center:表示子元素在容器交叉轴方向整体居中对齐
  • space-between:表示子元素在容器交叉轴方向两端对齐,剩下每一行子元素等分剩余的空间
  • space-around:表示子元素在容器交叉轴方向上两侧的间距都相等,且位于起点和终点的元素与容器边框的间距为两侧间距的1/2
  • stretch:表示每一行子元素都拉伸,是align-content的默认值。

Flex容器元素的子元素,有以下几个属性:

  1. order:该属性决定子元素的排列顺序
  2. flex-grow:该属性决定子元素的放大比例
  3. flex-shrink:该属性决定子元素的缩小比例
  4. flex-basis:该属性决定在分配多余空间之前,子元素占据的主轴空间的大小
  5. flex:该属性是复合属性,由flex-grow、flex-shrink和flex-basis组成
  6. align-self:该属性决定了子元素与其他子元素不一样的排列和对齐方式
更多推荐

深度剖析Linux信号机制

文章目录信号的概念信号的分类信号的产生方式从键盘获取通过系统调用硬件异常软件条件如何处理信号的到来信号的更深入剖析信号的处理动作是何时进行的?当有一大批同种信号到来时会怎样?Linux也提供了一批信号相关的系统调用信号的概念Linux中的信号是进程异步通信的一种方式。当某个信号发送到一个进程上,那么该进程就会分析该信号

java学习--day5 (java中的方法、break/continue关键字)

文章目录day4作业今天的内容1.方法【重点】1.1为什么要有方法1.2其实已经见过方法1.3定义方法的语法格式1.3.1无参无返回值的方法1.3.2有参无返回值的方法1.3.3无参有返回值的方法1.3.4有参有返回值的方法2.break和continue关键字2.1break;2.2continue;3.案例关于方法

7、DVWA——SQL盲注

文章目录一、概述二、low2.1通关思路(布尔盲注)(1)判断是否存在SQL注入漏洞(2)判断属于数字型注入还是字符型注入(3)判断结果集中的字段数(4)猜数据库名长度(5)猜数据库名(6)猜表的个数(7)猜第一个表名(8)猜user表中的字段个数、每个字段的长度、名称(9)猜字段内容2.2通关思路(时间盲注)(1)判

ASCII码对照表(十进制、八进制、十六进制、二进制的字符对照表)

ASCII(AmericanStandardCodeforInformationInterchange):美国信息交换标准代码是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC646。ASCII第一次以规范标准的类型发表是在1967年,最后一次

Java实现添加文字水印、图片水印功能实战

Java实现添加文字水印、图片水印功能实战本文介绍java实现在图片上加文字水印的方法,水印可以是图片或者文字,操作方便。java实现给图片添加水印实现步骤:获取原图片对象信息(本地图片或网络图片)添加水印(设置水印颜色、字体、坐标等)处理输出目标图片1.java实现给图片添加文字水印1.1获取原图片对象信息第一步:获

不过是一棵红黑树(附源码)

前言红黑树,可谓是名号响当当的一种数据结构了。在数据结构学习的初期我们了解到了搜索二叉树,并且知道搜索二叉树的效率是非常之高的,在理想情况下10亿个数据中找一个值它也只需要30次左右,但是它尽管如此厉害可是也有不足的地方,在一些极端情况下,搜索二叉树可能会被退化成一棵单链表,那么此时它的效率就会大打折扣的变成O(n)。

IOTE 2023国际物联网展直击:芯与物发布全新定位芯片,助力多领域智能化发展

IOTE2023国际物联网展,作为全球物联网领域的盛会,于9月20日在中国深圳拉开帷幕。北斗星通集团应邀参展,旗下专业从事物联网、消费类GNSS芯片研发设计的芯与物公司也随其亮相本届盛会。展会上,芯与物展示了一系列创新的GNSS定位芯片产品,引领了国内定位技术的发展潮流。其市场总监黄秋菊女士揭幕了公司最新的产品CC11

vue-cli创建项目、vue项目目录结(运行vue项目)、es6导入导出语法、vue项目编写规范

vue-cli创建项目、编写vue项目、1vue-cli创建项目1.1vue-cli命令行创建项目1.2使用vue-cli-ui创建2vue项目目录结构2.1运行vue项目2.2vue项目的目录结构3es6导入导出语法4vue项目编写规范4.1修改项目4.2以后写vue项目,只需要在固定位置写固定代码即可1vue-cl

【K8S系列】深入解析k8s网络插件—Calico

序言做一件事并不难,难的是在于坚持。坚持一下也不难,难的是坚持到底。文章标记颜色说明:黄色:重要标题红色:用来标记结论绿色:用来标记论点蓝色:用来标记论点Kubernetes(k8s)是一个容器编排平台,允许在容器中运行应用程序和服务。今天学习一下k8s网络插件-Calico相关知识希望这篇文章能让你不仅有一定的收获,

软件测试常问面试题

1、讲一下你最熟悉的模块是怎么测试的?2、fiddler如何抓https请求?步骤:设置浏览器http代理安装证书导入证书,端口号8888手机端获取fiddler的地址,配置无线局域网代理,安装手机证书。3、jmeter如何参数化(1)用户定义的变量添加一个线程组----添加一个配置元件—用户定义的变量。填写好变量名如

【网络技术】TCP详解

1TCP是什么TCP是TransmissionControlProtocol的缩写,即传输控制协议。TCP是一种面向连接的、可靠的、基于字节流的传输协议,是互联网通信协议TCP/IP中的一个重要组成部分。2三次握手三次握手的过程可以用以下图示表示:2.1详细介绍TCP协议使用三次握手(Three-wayhandshak

热文推荐