Flex弹性布局一文通【最全Flex教学】
文章目录
- 一.Flex布局
- 1.1 传统布局和flex布局
- 1.1.1 传统布局
- 1.1.2 flex弹性布局
- 1.2 flex初步体验
- 1.3 布局原理
- 二.常见Flex属性
- 2.1 常见父项属性
- 2.2 flex-direction主轴的方向
- 2.3 justify-content设置主轴上的子元素排列方式
- 2.4 设置子元素是否flex-wrap换行
- 2.5 align-itmes设置侧轴上的子元素排列方式(单行)
- 2.6 align-icontent设置侧轴上的子元素排列方式(多行)
- 2.7 align-content 和 align-items 区别
- 2.8 flex-flow 相当于flex-direction和flex-wrap
- 2.9 flex 布局子项常见属性
- 2.9. 1 flex属性
一.Flex布局
1.1 传统布局和flex布局
1.1.1 传统布局
-
兼容性好
-
布局繁琐
-
局限性,不能再移动端很好的布局
1.1.2 flex弹性布局
-
操作方便,布局极为简单,移动端应用很广泛
-
PC 端浏览器支持情况较差
-
E11或更低版本,不支持或仅部分支持
建议:
1.如果是 PC 端页面布局,我们还是传统布局。
2.如果是移动端或者不考虑兼容性问题的 PC 端页面布局,我们还是使用 flex 弹性布局
1.2 flex初步体验
先写一段简单的flax弹性布局案例来看一下flax~
html代码:
<div><span>1</span><span>2</span><span>3</span></div>
CSS代码:
div {display: flex;width: 80%;height: 300px;background-color: pink;justify-content: space-around;
}
div span {/* width: 150px; */height: 100px;background-color: purple;margin-right: 5px;flex: 1;
}
效果预览图:
主要代码解释:
justify-content:属性定义了浏览器之间,如何分配顺着弹性容器主轴 (或者网格行轴) 的元素之间及其周围的空间。
space-between 最左、最右item贴合左侧或右侧边框,item与item之间间距相等。
space-around 每个item 左右方向的margin相等。两个item中间的间距会比较大
1.3 布局原理
flex 是 flexible Box 的缩写,意为“弹性布局”,用来为盒状模型提供最大的灵活性,任何一个容器都可以指定为 flex 布局。
- 当我们为父盒子设为 flex 布局以后,子元素的 foat、clear 和 vertical-align 属性将失效。
- 伸缩布局=弹性布局=伸缩盒布局=弹性盒布局 flex 布局
采用 Flex 布局的元素, 称为 Flex 容器(flex container) , 简称"容器"。它的所有子元素自动成为容器成员, 称为 Flex 项目(flex item) , 简称"项目"。
- 体验中 div 就是 flex 父容器。
- 体验中 span 就是子容器 flex 项目
- 子容器可以横向排列也可以纵向排列
总结 flex 布局原理:
就是通过给父盒子添加 flex 属性,来控制子盒子的位置和排列方式
二.常见Flex属性
2.1 常见父项属性
flex-direction:设置主轴发方向
justify-content:设置主轴上的子元素排列方式
flex-wrap:设置子元素是否换行
align-icontent:设置侧轴上的子元素排列方式(多行)
align-itmes:设置侧轴上的子元素排列方式(单行)
flex-flow:符合属性,相当于flex-direction和flex-wrap
2.2 flex-direction主轴的方向
在 flex 布局中,是分为主轴和侧轴两个方向,同样的叫法有:行和列、×轴和 y 轴
row-reverse:
将主轴设置为y轴:
flex-direction: column;
注意:主轴和侧轴是会变化的,就看 flex-direction 设置谁为主轴,剩下的就是侧轴。而我们的子元素是跟着主轴来排列的
2.3 justify-content设置主轴上的子元素排列方式
justify-content 属性定义了项目在主轴上的对齐方式
平分剩余空间:
justify-content: space-around;
先俩边贴边,然后再平分剩余空间:
justify-content: space-between;
2.4 设置子元素是否flex-wrap换行
flex-wrap: wrap;
2.5 align-itmes设置侧轴上的子元素排列方式(单行)
该属性是控制子项在侧轴(默认是 y 轴)上的排列方式在子项为单项的时候使用
align-items: center;
拉伸:
align-items: stretch;
2.6 align-icontent设置侧轴上的子元素排列方式(多行)
设置子项在侧轴上的排列方式并且只能用于子项出现换行的情况(多行),在单行下是没有效果的。
align-content: space-between;
2.7 align-content 和 align-items 区别
-
align-items 适用于单行情况下,只有上对齐、下对齐、居中和拉伸
-
align-content 适应于换行(多行)的情况下(单行情况下无效),可以设置上对齐、下对齐、居中、拉伸以及平均分配剩余空间等属性值。
-
总结就是单行找 align-items 多行找 align-content
2.8 flex-flow 相当于flex-direction和flex-wrap
flex-flow: row wrap;
-
flex-direction :设置主轴的方向
-
justify-content:设置主轴上的子元素非列方式
-
flex-wrap :设置子元素是否换行
-
align-content :设置侧轴上的子元素的排列方式(多行)
-
align-items :设置侧轴上的子元素排列方式(单行)
-
flex-flow:复合属性,相当于同时设置了 flex-direction 和 flex-wrap
2.9 flex 布局子项常见属性
2.9. 1 flex属性
flex 属性定义子项目分配剩余空间,用 flex 来表示占多少份数。
html如下:
<section>
<div></div>
<div></div>
<div></div>
</section>
css如下:
<style>
section{display: flex;width: 60%;height: 150px;background-color: pink;margin: 0 auto;
}
section div:nth-child(1){width: 100px;height: 150px;background-color: red;
}
section div:nth-child(2){flex: 1;background-color: green;
}
section div:nth-child(3){width: 100px;height: 150px;background-color: red;
}
</style>
效果如下:
新建一个
<p><span>1</span><span>2</span><span>3</span>
</p>
CSS:
p{display: flex;width: 60%;height: 150px;background-color: pink;margin: 0 auto;
}
p span{flex: 1;
}
p span:nth-child(2){flex: 2;
}
效果预览:
相关文章:
Flex弹性布局一文通【最全Flex教学】
文章目录一.Flex布局1.1 传统布局和flex布局1.1.1 传统布局1.1.2 flex弹性布局1.2 flex初步体验1.3 布局原理二.常见Flex属性2.1 常见父项属性2.2 flex-direction主轴的方向2.3 justify-content设置主轴上的子元素排列方式2.4 设置子元素是否flex-wrap换行2.5 align-itmes设置侧…...
Navicat使用教程
Navicat:一个可以对别人的数据库进行操作的软件(需要与如mysql等数据库配套使用) 1. 下载mysql MySQL :: Download MySQL Community Server (Archived Versions) 下载上面那个版本 下载下来是个压缩包,解压 2.配置mysql (1)在…...
35岁测试人该何去何从?10年工作经验的我,只不过是一年的工作经验用了10年......
如果到了这个年龄,还是初级测试,或者只会一些简单的自动化测试,那么真的是不好干了。 35的年龄,企业对员工是有另一层面的考量。 简单来说,就是年龄上去了,能力也要上去,要么是技术专家&#…...
SpringBoot 项目中集成 Prometheus 和 Grafana
项目上线后,除了能保障正常运行以外,也需要服务运行的各个指标进行监控,例如 服务器CPU、内存使用占比,Full GC 执行时间等,针对一些指标出现异常,可以加入一些报警机制能及时反馈给开发运维。这样…...
红队APT——反朔源流量加密CSMSF证书指纹C2项目CDN域前置
目录 0x01 背景交代 0x02 常见红蓝对抗中红队面临问题 0x03 蓝队发现处置情况...
Linux环境下实现并详细分析c/cpp线程池(附源码)
一、线程池原理 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 线程池是一种多线程处理形式,处理过程中将任务添加到…...
移动web(三)
her~~llo,我是你们的好朋友Lyle,是名梦想成为计算机大佬的男人! 博客是为了记录自我的学习历程,加强记忆方便复习,如有不足之处还望多多包涵!非常欢迎大家的批评指正。 媒体查询 目标:能够根据…...
macbook怎么运行exe文件 mac打开exe文件的三大方法
exe文件是Windows系统的可执行文件,虽然Mac系统上无法直接打开exe文件,但是你可以在Mac电脑上安装双系统或者虚拟机来实现mac电脑上运行exe文件。除了这两种方法之外,你还可以在Mac电脑上使用类虚拟机软件打开exe文件,这三种方法各…...
GoldenGate(OGG)高可用XAG部署
前言: 本文档主要描述通过Oracle Grid Infrastructure Agents (XAG)基于Oracle RAC实现GoldenGate(OGG)软件高可用的实施操作 环境信息: 源端 目标端 节点一IP 节点二IP 192.168.1.84 192.168.1.86 节点一IP 节点二IP 192.168.1.200 192.168.1.210 VIP 192.…...
如何使用Docker容器部署O2OA(翱途)开发平台与OnlyOffice的集成版本?
O2OA(翱途)开发平台[下称O2OA平台或者O2OA]默认可以和OnlyOffice进行集成来实现在线文档编辑以及流程集成。开发者可以直接安装O2OA官网的OnlyOfficeO2Server的Docker版本用于体验。本文将详细介绍如何安装O2OA OnlyOffice的Docker版本。OnlyOffice Docs Sever可以单独安装,O2…...
springboot复习(黑马)(持续更新)
学习目标基于SpringBoot框架的程序开发步骤熟练使用SpringBoot配置信息修改服务器配置基于SpringBoot的完成SSM整合项目开发一、SpringBoot简介1. 入门案例问题导入SpringMVC的HelloWord程序大家还记得吗?SpringBoot是由Pivotal团队提供的全新框架,其设计…...
K_A16_001 基于STM32等单片机驱动HX711称重模块 串口与OLED0.96双显示
K_A16_001 基于STM32等单片机驱动HX711称重模块 串口与OLED0.96双显示一、资源说明二、基本参数参数引脚说明三、驱动说明对应程序:四、部分代码说明1、接线引脚定义1.1、STC89C52RCHX711称重模块1.2、STM32F103C8T6HX711称重模块五、基础知识学习与相关资料下载六、视频效果展…...
单例模式之饿汉式
目录 1 单例模式的程序结构 2 饿汉式单例模式的实现 3 饿汉式线程安全 4 防止反射破坏单例 5 总结 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。所谓单例就是在系统中只有一个该类的实例,并且提供一个访问该实例的全局…...
软件测试培训三个月,找到工作了11K,面试总结分享给大家
功能方面:问的最多的就是测试流程,测试计划包含哪些内容,公司人员配置,有bug开发认为不是 bug怎么处理,怎样才算是好的用例,测试用例设计方法(等价类,边界值等概念方法)&…...
Hbase备份与恢复工具Snapshot的基本概念与工作原理
数据库都有相对完善的备份与恢复功能。备份与恢复功能是数据库在数据意外丢失、损坏下的最后一根救命稻草。数据库定期备份、定期演练恢复是当下很多重要业务都在慢慢接受的最佳实践,也是数据库管理者推荐的一种管理规范。HBase数据库最核心的备份与恢复工具——Sna…...
RTOS中事件集的实现原理以及实用应用
事件集的原理 RTOS中事件集的实现原理是通过位掩码来实现的。事件集是一种用于在任务之间传递信号的机制。在RTOS中,事件集通常是一个32位的二进制位向量。每个位都代表一个特定的事件,例如信号、标志、定时器等。 当一个任务等待一个或多个事件时&…...
计及新能源出力不确定性的电气设备综合能源系统协同优化(Matlab代码实现)
运行视频及运行结果: 计及碳排放成本的电-气-热综合能源系纷充节点能价计算方法研究(Matlab代码实现)目录 第一部分 文献一《计及新能源出力不确定性的电气设备综合能源系统协同优化》 0 引言 1 新能源出力不确定性处理 1.1 新…...
推荐几个超实用的开源自动化测试框架
有什么好的开源自动化测试框架可以推荐?为了让大家看文章不蒙圈,文章我将围绕3个方面来阐述: 1、通用自动化测试框架介绍 2、Java语言下的自动化测试框架 3、Python语言下的自动化测试框架 随着计算机技术人员的大量增加,通过编写…...
Mac 上解压缩 RAR 文件
RAR 在十几年前的互联网曾叱咤风云般的存在。在那时,你所能见到的压缩文件几乎都是 RAR 格式,大家在 Windows 上使用的压缩、解压缩软件基本都是 WinRAR。虽然这些年使用 RAR 格式的压缩包的情况在逐渐减少,但是你还是经常能在国内各种网站下…...
C++核心编程<引用>(2)
c核心编程<引用>2.引用2.1引用的基本使用2.2引用注意事项2.3引用做函数参数2.4引用做函数返回值2.5引用的本质2.6常量引用2.引用 2.1引用的基本使用 作用: 给变量起别名语法:数据类型 &别名 原名演示#include<iostream> using namespace std; void func();i…...
零入门kubernetes网络实战-20->golang编程syscall操作tun设备介绍
《零入门kubernetes网络实战》视频专栏地址 https://www.ixigua.com/7193641905282875942 本篇文章视频地址(稍后上传) 本篇文章主要是使用golang自带的syscall包来创建tun类型的虚拟网络设备。 注意: 目前只能使用syscall包来创建tun类型的虚拟设备。 tun虚拟网…...
springboot之自动配置
文章目录前言一、配置文件及自动配置原理1、配置文件2、yaml1、注解注入方式给属性赋值2、yaml给实体类赋值3、Properties给属性赋值二、springboot的多环境配置四、自动配置总结前言 1、自动装配原理 2、多种方式给属性赋值 3、多环境配置 4、自动配置 一、配置文件及自动配置…...
wxpython设计GUI:wxFormBuilder工具常用布局结构介绍之布局四—面板拼接式
python借助wxFormBuilder工具搭建基础的GUI界面—wxFormBuilder工具使用介绍:https://blog.csdn.net/Logintern09/article/details/126685315 布局四:面板拼接式,先Panel面板构图,再使用程序代码在Frame框架上拼接面板 下面讲一下…...
全网最全之接口测试【加密解密攻防完整版】实战教程详解
看视频讲的更详细:https://www.bilibili.com/video/BV1zr4y1E7V5/? 一、对称加密 对称加密算法是共享密钥加密算法,在加密解密过程中,使用的密钥只有一个。发送和接收双方事先都知道加密的密钥,均使用这个密钥对数据进行加密和解…...
Python - 目录文件(OS模块) 常用操作
目录os模块的方法os.path()模块的方法使用示例示例一:简单使用示例二:获取文件夹下指定条件的文件os模块的方法 方法说明os.listdir(path)取得指定文件夹下的文件列表os.mkdir(path)创建一个名为path的文件夹os.open(file, flags)打开一个文件ÿ…...
把本地代码初始化到远程git仓库
本地代码,推送到远程的git仓库。第一种方法第一步:建立远程的git仓库第二步:拉取git仓库到本地第三步:将本地代码复制到本地的git拉下来的文件夹中第四步:代码提交即可git add . --> git commit -m 初始化 --> g…...
关于angular中的生命周期函数
生命周期函数,也叫生命周期钩子。 Angular的每个组件(包括根组件和子组件)都存在一个生命周期,从创建、更新、到销毁,Angular提供组件生命周期钩子函数, 组件的生命周期从实例化组件类并渲染组件视图及其…...
【拼图】拼图游戏-微信小程序开发流程详解
还记得小时候玩过的经典拼图游戏吗,上小学时,在路边摊用买个玩具,是一个正方形盒子形状,里面装的是图片分割成的很多块,还差一块,怎么描述好呢,和魔方玩具差不多,有没有听说叫二维的…...
第六章 opengl之光照(颜色)
OpenGL光照颜色创建一个光照场景光照 颜色 颜色由RGB组成,分别是红色,绿色,蓝色。举例定义一个颜色向量: glm::vec3 coral(1.0f, 0.5f, 0.31f);而在现实中,人眼看到的是 物体反射后的颜色,也就是说不能被…...
C语言-基础了解-19-C位域
C位域 一、C位域 如果程序的结构中包含多个开关量,只有 TRUE/FALSE 变量,如下: struct {unsigned int widthValidated;unsigned int heightValidated; } status;这种结构需要 8 字节的内存空间,但在实际上,在每个变…...
网站运营与维护是什么/b2b平台有哪几个
hikvision-control实现hikvision网络摄像机的登录、云台旋转控制、实时图片截取功能。库文件安装将src-dll文件夹中的文件拷贝到系统的库文件目录,主意文件名称不要进行修改。windows7,windows server目录如下:C:\Windows\System32当然你也可…...
长页在线制作网站/创建软件平台该怎么做
在写上篇文章《spring整合springmvc和hibernate》的时候,曾遇到一个问题 INFO: Server startup in 8102 ms Hibernate: insert into t_user (name, password) values (?, ?) Mar 31, 2018 5:47:19 PM org.apache.catalina.core.StandardWrapperValve invoke SEVER…...
网站备案拍照 广州/怎么查百度搜索排名
新一代可重构ERP系统(转)新一代可重构ERP系统网络化时代,企业对传统ERP提出了新的要求,新一代ERP应运而生,本文简要介绍新一代ERP的发展趋势,同时详细介绍天剑新一代可重构ERP的内容、特点、技术架构、关键技术、系统实现方法和实…...
深圳知名网站建设公司/北京搜索引擎优化管理专员
一、题目描述 给你一个由 1(陆地)和 0(水)组成的的二维网格,请你计算网格中岛屿的数量。 岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外,你可以假设…...
网站建设作者墙这个模板/seo内容优化是什么意思
Linux hosts.allow与hosts.deny文件设置 转自: http://purpen.iteye.com/blog/1135342 redhat as4常用应用之hosts.allow和hosts.deny 一、概述 这两个文件是tcpd服务器的配置文件,tcpd服务器可以控制外部IP对本机服务的访问。这两个配置文件的格式如下&…...
小程序怎么放在桌面/天津网站建设优化
下面是我的github,首页后面的教程按照这个来的。https://github.com/wangsrGit119github.com创建同用户名仓库看下图,就是我的用户名同名仓库创建过程,因为之前创建了的所以提示已存在注意点:1.勾选public 2.勾选 Initialize th…...