CSS伸缩盒模型

CSS伸缩盒模型

伸缩盒模型是CSS中的一种布局手段,可以使元素具有弹性,让元素可以跟随页面大小的改变而改变。

1. 伸缩容器

给元素设置display:flexdisplay:inline-flex ,就是伸缩容器。

2. 主轴与侧轴

  • 主轴: 伸缩项目沿着主轴排列,主轴默认是水平的,默认方向是:从左到右。
  • 侧轴: 与主轴垂直的就是侧轴,侧轴默认是垂直的,默认方向是:从上到下。

主轴的属性:

属性名作用
flex-direction
主轴方向

row :主轴方向水平从左到右(默认)
row-reverse :主轴方向水平从右到左
column :主轴方向垂直从上到下
column-reverse :主轴方向垂直从下到上
flex-wrap
主轴换行

nowrap :不换行(默认)
wrap :自动换行
wrap-reverse :反向换行
flex-flow
复合属性
flex-direction 和 flex-wrap
justify-content
主轴对齐

flex-start :主轴起点对齐(默认)
flex-end :主轴终点对齐
center :居中对齐
space-between :均匀分布,两端对齐(最常用)
space-around :均匀分布,两端距离是中间距离的一半
space-evenly :完全平分

注意:改变了主轴的方向,侧轴方向也随之改变。

侧轴的属性:

属性名作用
align-items
侧轴一行对齐

flex-start :顶端对齐
flex-end :尾端对齐
center :水平对齐
baseline : 伸缩项目的第一行文字的基线对齐
stretch :如果伸缩项目未设置高度,将占满整个容器的高度(默认)
align-content
侧轴多行对齐

flex-start :顶端对齐
flex-end :尾端对齐
center :与侧轴的中点对齐
space-between :两端对齐,中间平均分布
space-around :均匀分布,上下两端距离是中间距离的一半
space-evenly : 完全平分
stretch :占满整个侧轴(默认)

3. flex练习1

用flex完成以下排列:

image-20240202212002463

3.1 代码演示

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>flex练习1</title><style>*{box-sizing: border-box;margin: 0;padding: 0;}.wrapper{width: 400px;height: 200px;margin: auto;border: 1px solid #ccc;display: flex;/* align-items指定元素在纵轴上的排布方式 */align-items: center;/* justify-content指定元素在主轴上的排布方式 */justify-content: space-around;}.box{width: 40px;height: 40px;border-radius: 50%;background-color: #f00;}</style>
</head>
<body><div class="wrapper"><div class="box"></div><div class="box"></div><div class="box"></div><div class="box"></div></div>
</body>
</html>

4. flex练习2

用flex,完成骰子的点数。

image-20240202212159838

4.1 分析思路

image-20240202213028669

4.2 代码演示

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>骰子点数</title><style>* {margin: 0;padding: 0;box-sizing: border-box;}.wrapper {margin: 100px 100px;width: 500px;height: 500px;border-radius: 10px;background-color: #232323;display: flex;flex-wrap: wrap;align-items: center;justify-content: space-around;}.dot {width: 20px;height: 20px;border-radius: 50%;background-color: #000;}.box-common {width: 100px;height: 100px;display: flex;background-color: #fff;padding: 4px;margin: 60px;border-radius: 8px;}.box {align-items: center;justify-content: center;}.box2 {flex-direction: column;justify-content: space-between;align-items: center;}/* align-self子元素属性,控制自身的排列 */.dot2-1 {align-self: flex-start;}/* align-self子元素属性,控制自身的排列 */.dot2-2 {align-self: flex-end;}/* 3点的写法 */.box3 {justify-content: space-between;}.dot3-1 {align-self: flex-start;}.dot3-2 {align-self: center;}.dot3-3 {align-self: flex-end;}/* box4 */.box4 {flex-wrap: wrap;}.dot4 {width: 50%;height: 50%;display: flex;}.dot4:nth-child(2) {justify-content: flex-end;}.dot4:nth-child(3) {align-items: flex-end;}.dot4:nth-child(4) {justify-content: flex-end;align-items: flex-end;}</style></head><body><div class="wrapper"><!-- 一点 父容器,主轴居中,侧轴居中--><div class="box box-common"><div class="dot"></div></div><!-- 二点 主容器主轴为侧轴,居中,每一个子项单独控制,第一个flex-start,第二个flex-end--><div class="box2 box-common"><div class="dot dot2-1"></div><div class="dot dot2-2"></div></div><!-- 三点 同2点写法一样,只不过中间的点是center--><div class="box3 box-common"><div class="dot dot3-1"></div><div class="dot dot3-2"></div><div class="dot dot3-3"></div></div><!-- 四点 分为四个部分,嵌套两层flex盒子--><div class="box4 box-common"><div class="dot4"><div class="dot"></div></div><div class="dot4"><div class="dot"></div></div><div class="dot4"><div class="dot"></div></div><div class="dot4"><div class="dot"></div></div></div></div></body>
</html>

5. 青蛙小游戏

Flexbox Froggy(弹性盒小青蛙)是一个帮助你快速学习前端 Flex 布局的小游戏,可以通过玩游戏的方式进行巩固flex知识。

项目地址:https://flexboxfroggy.com/

image-20240202213434991

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/671797.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python coding with ChatGPT 打卡第17天| 二叉树:找树左下角的值、路径总和

相关推荐 python coding with ChatGPT 打卡第12天| 二叉树&#xff1a;理论基础 python coding with ChatGPT 打卡第13天| 二叉树的深度优先遍历 python coding with ChatGPT 打卡第14天| 二叉树的广度优先遍历 python coding with ChatGPT 打卡第15天| 二叉树&#xff1a;翻转…

SpringBoot+随机盐值+双重MD5实现加密登录

&#x1f3e1;浩泽学编程&#xff1a;个人主页 &#x1f525; 推荐专栏&#xff1a;《深入浅出SpringBoot》《java对AI的调用开发》 《RabbitMQ》《Spring》《SpringMVC》 &#x1f6f8;学无止境&#xff0c;不骄不躁&#xff0c;知行合一 文章目录 前言一、salt…

阿里云游戏服务器收费价格表,一年和1个月报价

阿里云游戏服务器租用价格表&#xff1a;4核16G服务器26元1个月、146元半年&#xff0c;游戏专业服务器8核32G配置90元一个月、271元3个月&#xff0c;阿里云服务器网aliyunfuwuqi.com分享阿里云游戏专用服务器详细配置和精准报价&#xff1a; 阿里云游戏服务器租用价格表 阿…

Linux系统调试课:硬件断点

沉淀、分享、成长,让自己和他人都能有所收获!😄 📢在linux内核编程中,经常会遇到由于内存被篡改,例如 buffer overflow,野指针,write after free等。查找分析此类问题非常的麻烦。 一、什么是硬件断点 硬件断点,是Linux内核中是一种被ptrace和内核内调试器使用调试…

【数据分享】1929-2023年全球站点的逐月平均降水量(Shp\Excel\免费获取)

气象数据是在各项研究中都经常使用的数据&#xff0c;气象指标包括气温、风速、降水、湿度等指标&#xff0c;说到常用的降水数据&#xff0c;最详细的降水数据是具体到气象监测站点的降水数据&#xff01; 有关气象指标的监测站点数据&#xff0c;之前我们分享过1929-2023年全…

Spring Security 4.X(XML文件配置session超时,单点登录-session并发控制,退出/logout)

目录 前言 一、Java web设置session超时 二、session并发控制 三、退出/logout设置 前言 本文是继SSM项目集成Spring Security 4.X版本&#xff08;使用spring-security.xml 配置文件方式&#xff09;_spring security4.x 会话管理配置文件版-CSDN博客https://blog.csdn.ne…

DAY5 作业

1.TCP三次握手 2.TCP四次挥手 3.TCP和UDP的区别 相同点&#xff1a;都属于传输层的协议 不同点&#xff1a; TCP&#xff1a;1&#xff09;提供面向连接的&#xff0c;可靠的数据传输服务&#xff1b; 2&#xff09;传输过程中&#xff0c;数据无误&#xff0c;数据无丢失、数…

【C++第二阶段】空指针访问成员函数常成员函数常成员属性

你好你好&#xff01; 以下内容仅为当前认识&#xff0c;可能有不足之处&#xff0c;欢迎讨论&#xff01; 文章目录 空指针访问成员函数常成员函数&常成员属性 空指针访问成员函数 类对象类型的空指针可以访问成员函数&#xff0c;但是不能够访问带有成员属性的成员函数。…

大数据调用链监控平台技术原理

一、AOP技术总结 二、监控逻辑动态织入原理 三、JVM动态织入流程 四、调用链监控平台技术简要总结 &#xff08;一&#xff09;、单服务的无感知自动日志埋点 jvm层面的字节码织入埋点&#xff0c;javaagent方式启动。 &#xff08;二&#xff09;、多服务调用链串联 trace…

transformer剪枝论文汇总

文章目录 NN Pruning摘要实验 大模型剪枝LLM-PrunerSparseGPT LTPVTPWidth & Depth PruningPatch SlimmingDynamicViTSPViTDynamicBERTViT SlimmingFastFormersNViTUVCPost-training pruning NN Pruning 《Block Pruning For Faster Transformers》 《为更快的transformer…

关于TDSQL(MySQL)的简单知识分享

0. 前言 最近在系统改造过程中&#xff0c;接触到了国产分布式数据库TDSQL&#xff0c;记录一下关于TDSQL的部分知识点。 1. TDSQL简介 TDSQL是腾讯推出的一款兼容MySQL的自主可控、高一致性分布式数据库产品。 1.1 TDSQL优点&#xff1a; 数据强一致性高性能低成本线性水…

OPC UA客户端工具Softing OPC Client使用_推荐使用

OPC UA客户端工具Softing OPC Client使用_推荐使用 Softing OPC Client工具介绍 Softing OPC Client工具是德国Softing公司出品的标准OPC客户端。 是我数年来用过的最完备的OPC UA客户端工具。全部的数据类型都支持&#xff0c;功能齐备。 是查看或测试OPC服务器的最好工具了…

使用esp32 cam + SR602人体感应模块制作一个小型的监控

需求&#xff1a; 做一个小型的监控&#xff0c;类似电子猫眼&#xff0c;监测到人之后&#xff0c;取一张图 然后发送到自己的邮箱。 架构&#xff1a; 1.sr602 传感器监测到人 2. esp32 cam 取图 并通过mqtt协议传到远端服务器 3, 服务器利用python 搭建一个mqtt客户端&…

【Jenkins】Jenkins关闭Jenkins关闭、重启

目录 一、Jenkins关闭、重启 二、Jenkins服务的启动、停止方法。 一、Jenkins关闭、重启 1.关闭Jenkins 只需要在访问jenkins服务器的网址url地址后加上exit&#xff0c;关闭Jenkins服务。 例如&#xff1a;http://localhost:8081/exit 2.重启Jenkies 只有在Jenkins服务启动…

webrtc native api的几个要点

文章目录 基本流程状态回调类sdp的中媒体行pc对象 基本流程 webrtc native的接口&#xff0c;主要就是围绕着PeerConnection对象&#xff0c;一个PeerConnection对象它代表了一次音视频会话。 那么通过PeerConnection对象建立音视频通话&#xff0c;包括如下步骤&#xff1a; …

第三篇:跨平台QT开发-正则表达式和文件处理

正则表达式 正则表达式即一个文本匹配字符串的一种模式&#xff0c;Qt 中 QRegExp 类实现使用正则表达式 进行模式匹配&#xff0c;且完全支持 Unicode&#xff0c;主要应用&#xff1a;字符串验证、搜索、查找替换、分割。 正则表达式中字符及字符集 元素含义 c 匹配字符本…

【WebSocket】微信小程序原生组件使用SocketTask 调用星火认知大模型

直接上代码 微信开发者工具-调试器-终端-新建终端 进行依赖安装 npm install base-64 npm install crypto-js 然后顶部工具栏依次点击 工具-构建npm // index.js const defaultAvatarUrl https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQ…

4、ChatGPT 无法完成的 5 项编码任务

ChatGPT 无法完成的 5 项编码任务 这是 ChatGPT 不能做的事情的一个清单,但这并非详尽无遗。ChatGPT 可以从头开始生成相当不错的代码,但是它不能取代你的工作。 我喜欢将 ChatGPT 视为 StackOverflow 的更智能版本。非常有帮助,但不会很快取代专业人士。当 ChatGPT 问世时…

鸿蒙开发系列教程(十四)--组件导航:Tabs 导航

Tabs 导航 Tabs组件的页面组成包含两个部分&#xff0c;分别是TabContent和TabBar。TabContent是内容页&#xff0c;TabBar是导航页签栏 每一个TabContent对应的内容需要有一个页签&#xff0c;可以通过TabContent的tabBar属性进行配置 设置多个内容时&#xff0c;需在Tabs…

Maven构建OSGI+HttpServer应用

Maven构建OSGIHttpServer应用 官网&#xff08;https://eclipse.dev/equinox/server/http_in_equinox.php&#xff09;介绍有两种方式&#xff1a; 一种是基于”org.eclipse.equinox.http”包的轻量级实现&#xff0c;另一种是基于”org.eclipse.equinox.http.jetty”包&#…