CSS新手入门笔记整理:CSS3弹性盒模型

特点

  • 子元素宽度之和小于父元素宽度,所有子元素最终的宽度就是原来定义的宽度。
  • 子元素宽度之和大于父元素宽度,子元素会按比例来划分宽度。
  • 在使用弹性盒子模型之前,必须为父元素定义“display:flex;”或“display:inline-flex;”。

弹性盒子模型属性

属性

说明

flex-grow

定义子元素的放大比例

flex-shrink

定义子元素的缩小比例

flex-basis

定义子元素的宽度

flex

flex-grow、flex-shrink、flex-basis 的复合属性

flex-direction

定义子元素的排列方向

flex-wrap

定义子元素是单行显示,还是多行显示

flex-flow

flex-direction、flex-wrap的复合属性

order

定义子元素的排列顺序

justify-content

定义子元素在“横轴”上的对齐方式

align-items

定义子元素在上的对齐方式“纵轴”


放大比例:flex-grow

flex-grow属性用来定义弹性盒子内部子元素的放大比例。当所有子元素宽度之和小于父元素的宽度时,子元素如何分配父元素的剩余空间。

语法

父元素{display:flex;}子元素{flex-grow: 数值;}

flex-grow属性取值是一个数值,默认值为0。当取值为0时,表示不索取父元素的剩余空间;当取值大于0时,表示索取父元素的剩余空间(即子元素放大)。取值越大,索取得越多。


缩小比例:flex-shrink

flex-shrink属性用于定义弹性盒子内部子元素的缩小比例。当所有子元素宽度之和大于父元素的宽度时,子元素如何缩小自己的宽度。

语法

父元素{display:flex;}子元素{flex-shrink: 数值;}

flex-shrink属性取值是一个数值,默认值为1。当取值为0时,表示子元素不缩小;当取值大于1时,表示子元素按一定的比例缩小。取值越大,缩小得越厉害。


元素宽度:flex-basis

  • flex-basis属性用于定义弹性盒子内部的子元素在分配空间之前,该子元素所占的空间大小。浏览器会根据这个属性,计算父元素是否有多余空间。
  • flex-basis相当于width,用来定义子元素的宽度。在弹性盒子中,flex-basis的语义会比width更好。
  • 如果某一个子元素同时设置flex-basis和width,那么flex-basis的值会覆盖width的值。

语法

父元素{display:flex;}子元素{flex-basis: 取值;}

flex-basis属性取值有两个:一个是“auto”,即该子元素的宽度是根据内容多少来定的;另一个是“长度值”,单位可以为px、em和百分比等。


复合属性:flex

flex属性可以同时设置flex-grow、flex-shrink、flex-basis这3个属性。

语法

父元素{display:flex;}子元素{flex: grow shrink basis;}

参数grow是flex-grow的取值,参数shrink是flex-shrink的取值,参数basis是flex-basis的取值。flex属性的默认值为“0 1 auto”。


排列方向:flex-direction

  • flex-direction属性用来来定义弹性盒子内部“子元素”的排列方向。即定义子元素是横着排,还是竖着排。
  • flex-direction属性是在弹性盒子(即父元素)上定义的。

语法

父元素{display:flex;flex-direction: 取值;
}

flex-direction属性取值

属性值

说明

row

横向排列(默认值)

row-reverse

横向反向排列

column

纵向排列

column-reverse

纵向反向排列


多行显示:flex-wrap

flex-wrap属性用来定义弹性盒子内部“子元素”是单行显示还是多行显示。

语法

父元素{display:flex;flex-wrap: 取值;
}

flex-wrap属性取值

属性值

说明

nowrap

单行显示(默认值)

wrap

多行显示,也就是换行显示

wrap-reverse

反向多行显示


复合属性:flex-flow

flex-flow属性用来同时设置flex-direction、flex-wrap这两个属性。

语法

父元素{display:flex;flex-flow: direction wrap;
}

参数direction是flex-direction的取值,参数wrap是flex-wrap的取值。flex-flow属性的默认值为“row nowrap”。


排列顺序:order

order属性用来定义弹性盒子内部“子元素”的排列顺序。

语法

父元素{display:flex;}
子元素{order:整数;}

order属性取值是一个正整数,即1、2、3等。


水平对齐:justify-content

justify-content属性来定义弹性盒子内部子元素在“横轴”上的对齐方式。

语法

父元素{display:flex;justify-content: 取值;
}

属性值

说明

flex-start

所有子元素在左边(默认值)

center

所有子元素在中间

flex-end

所有子元素在右边

space-between

所有子元素平均分布

space-around

所有子元素平均分布,但两边留有一定间距


垂直对齐:align-items

align-items属性用来定义弹性盒子内部子元素在“纵轴”上的对齐方式。

语法

父元素{display:flex;align-items: 取值;
}

属性值

说明

flex-start

所有子元素在上边(默认值)

center

所有子元素在中部

flex-end

所有子元素在下边

baseline

所有子元素在父元素的基线上

stretch

拉伸子元素以适应父元素高度


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

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

相关文章

鸿萌推荐:数据库恢复软件 Systools SQL Server Recovery Manager

Systools SQL Server Recovery Manager 支持恢复和导出SQL数据库 MDF、NDF和BAK文件,是 SQL Server 数据库恢复的一款优质软件。 Systools SQL Server Recovery Manager 性能 分析 SQL Server LOG 数据库事务将 MDF、LDF 和 BAK 文件导出到位于网络上的 SQL Serve…

【YOLOv8新玩法】姿态评估解锁找圆心位置

前言 Hello大家好,今天给大家分享一下如何基于深度学习模型训练实现圆检测与圆心位置预测,主要是通过对YOLOv8姿态评估模型在自定义的数据集上训练,生成一个自定义的圆检测与圆心定位预测模型 制作数据集 本人从网络上随便找到了个工业工件…

Map集合体系

Map集合的概述 Map集合是一种双列集合,每个元素包含两个数据。 Map集合的每个元素的格式:keyvalue(键值对元素)。 Map集合也被称为“键值对集合”。 Map集合的完整格式:{key1value1 , key2value2 , key3value3 , ...} Map集合的使用场景…

基于Java SSM框架实现咖啡馆管理系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现咖啡馆管理系统演示 摘要 2021是网络科技的时代 ,众多的软件被开发出来,给客户带来了很大的选择余地,而且客户越来越追求更个性的需求。在这种时代背景下,客户对咖啡馆管理系统越来越重视,使更好…

【ARM 安全系列介绍 3.4 -- 安全证书介绍】

文章目录 安全证书安全证书的主要组成部分安全证书的应用场景证书使用举例 证书格式PEM (Privacy Enhanced Mail)DER (Distinguished Encoding Rules)PKCS#7/P7B (Public Key Cryptography Standards #7)PKCS#12/PFX (Public Key Cryptography Standards #12)P7B 和 PFX/P12 的…

展馆漫游可视化与智慧展厅:开启未来展览新篇章

随着科技的飞速发展,展馆行业也在不断寻求创新和突破。展馆漫游可视化和智慧展厅的出现,为展馆行业带来了全新的发展机遇。本文将围绕这两个主题,探讨它们如何改变传统展览模式,开启未来展览新篇章。 一、展馆漫游可视化&#xff…

Polygon zkEVM Spearbit审计报告解读(2022年12月版本)

1. 引言 前序博客: Polygon zkEVM Hexens审计报告解读(2022年12月至2023年2月版本) 主要见: Polygon zkEVM Security Review: December 2022 Engagement Polygon zkEVM为提供(opcode层面兼容的)EVM等价…

Python自动化测试系列[v1.0.0][常见页面操作处理]

[智能等待] # 用于实现智能等待页面元素的出现 # encoding utf-8 """ __title__ __author__ davieyang __mtime__ 2018/4/21 """ from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait …

代码签名证书是什么?

代码签名证书就像是软件世界的身份证,它为开发者提供了一种在分发软件时验证软件真实性和完整性的方式。通过使用数字签名技术,开发者可以将自己的“签名”嵌入软件中,确保在软件传播的过程中不被篡改。 代码签名证书的作用 确保软件完整性&…

异步Buck升级为同步Buck注意点总结(摘自芯洲)

1 介绍图 2所示,异步Buck变换器采用肖特基二极管作为续流管,而同步Buck变换器用MOSFET替代肖特基二极管进行续流,由于MOSFET的导通电阻很低,所以导通损耗较低,而肖特基二极管的损耗为其正向导通压降乘以电流&#xff0…

kali-钓鱼网站远程代码漏洞分析

文章目录 一、靶场搭建二、开始信息收集,寻找漏洞三、使用蚁剑连接后门程序四、使用webshell查看数据库信息五、进入网站后台 实验环境 Kali CentOs 一、靶场搭建 CentOsIP地址192.168.64.159 #关闭centos防火墙 [rootlocalhost ~]# systemctl disable --now fi…

抖音网红罗盘时钟改良版

文章目录 💕效果展示💕代码展示HTML💕效果展示 💕代码展示 HTML <!DOCTYPE html> <html lang=