15_弹性盒布局

2023-10-27

一、弹性盒子的基本概念

弹性盒属性的使用

  1. 概念:在父级元素设置设置弹性盒属性(容器),所有的子级元素会在父级容器的轴向上排列(项目)

  2. 作用:控制所有的子级元素在父级元素上的排列位置

  3. 如何形成弹性盒

    • 属性:display(显示方式)
    • 属性值:flex(弹性布局)
  4. 形成弹性盒之后的特点(主轴和侧轴)

    • 父级容器设置了弹性盒,会有两个轴向X和Y轴,默认是x轴为主轴,所有子级的元紊都会沿着x轴进行排列
    • 主轴和侧轴是相对的关系
      • 当x轴是主轴的时候,Y轴对应就是侧轴
      • 当Y轴是主轴的时候,x轴对应就是侧轴
    • 在弹性盒中不考虑元素类型,所有的子级元素都可以直接设置宽高大小
    • 设置图片居中:给图片设置margin: auto
  5. 弹性盒的使用注意点

    • 弹性盒兼容只能在高版本浏览器中使用
    • 弹性盒不会脱离文档流,不会破坏网页布局,不存在高度塌陷的问题
    • 盒模型和定位属性是可以正常使用的,但是浮动不可以用(暂且忘记)

二、设置在父级元素上的属性

可以设置在父级元素上的属性(控制所有的子级元素的位置)

一:改变主轴的排列方向(默认主轴是x轴方向)

  1. 属性:flex-direction

  2. 属性值

    • row 水平方向x轴,侧轴Y轴
    • column 垂直方向Y轴,侧轴x轴

二:设置主轴的对齐方式

  1. 属性:justify-content

  2. 属性值

    • flex-start 主轴开始位置排列
    • flex-end 主轴结束位置排列
    • center 主轴的居中位置
    • space-between 两端对齐,其余空间自动分配
    • space-around 元素的左右空间分配是相等的
    • space-evenly 所有的空间都是自动分配的

三:设置侧轴的对齐方式

  1. 属性:align-items

  2. 属性值

    • flex-start 侧轴的开始位置排列
    • flex-end 侧轴的结束位置排列
    • center 居中位置显示
    • baseline 基线对齐默认和flex-start的效果是一样的(了解)
    • stretch 拉伸(了解)

四:控制子级元素换行显示(弹性盒子级超出父级的宽度默认是进行挤压的不会往下掉)

  1. 属性:flex-wrap

  2. 属性值

    • no-wrap 默认值 不换行 默认进行挤压的
    • wrap 换行

五:控制行与行之间的间距

  1. 属性:align-content

  2. 属性值

    • flex-start 主轴开始位置排列(常用)
    • flex-end 主轴结束位置排列
    • center 主轴的居中位置
    • space-between 两端对齐,其余空间自动分配
    • space-around 元素的左右空间分配是相等的
    • space-evenly 所有的空间都是自动分配的

三、设置在子级元素上的属性

设置在子级元素上的属性(控制单个子级在弹性盒中的位置)

一:控制元素的显示顺序

  1. 属性:order
  2. 属性值:默认为0 数字越大越往后显示

二:控制单个元素在侧轴上的对齐方式

  1. 属性:align-self
  2. 属性值
    • flex-start/end/center 开始/结束/中间
    • baseline/stretch 基线对齐/拉伸

四、flex为1的情况

移动端布局:头部、底部、中间区域(跟随用户的手机屏幕大小进行改变)
一、flex:1的情况

  1. 属性:flex 表示可以将弹性盒区域分为多少份
  2. 属性值:number 1、2、3、4、5 将一个区域分为几份进行等分
  3. 常用的属性值:1 表示占据主轴上剩下的所有空间

五、flex为1的推算过程

一:flex作为属性出现的时候表示占据主轴上剩下的空间,由以下三个属性复合而成

  1. 相对于其他元素进行扩展的量

    • 属性:flex-grow
    • 属性值:
    • 0 空间是默认的
    • 1 表示占据主轴上剩下的空间
  2. 相对于其他元素进行收缩的量

    • 属性:flex-shrink
    • 属性值
      • 0 改变主轴的宽高不会被挤压
      • 1 改变主轴的宽高会被挤压
  3. 项目的宽度(width作用一样)

    • 属性:flex-basis
    • 属性值:0~100%/auto
  4. 三个属性推算出flex:1的效果

    • 默认值:0 1 auto
    • 常用值:1 1 0% => 简写成flex:1

六、多列布局

<style>
        section{
            width: 1000px;
            height: 500px;
            border: 1px solid #000;
            margin: 100px auto;
            /* 当前的容器分为多少列 */
            column-count: 3;
            /* 当前列的宽度 */
            /* column-width: 200px; */
            /* 列和列之间的间距 */
            column-gap: 50px;
            /* 列的边框 */
            column-rule: 5px solid #000
        }
        h3{
            column-span: all;
            text-align: center;
        }
    </style>

<body>
    <section>
    </section>
</body>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

15_弹性盒布局 的相关文章

  • 从顶部开始在同一水平线上显示同一行中的两个 div

    这是我的代码 floating box display inline block width 150px margin 10px border 3px solid 73AD21 after box border 3px solid red
  • 如何保留用户的输入打印?

    我正在尝试添加用户的评论 所以我只是尝试读取输入并将其发送以进行打印 但问题是 一旦我刷新页面或输入另一个输入 打印的输入就会消失 因此 即使刷新页面或重新输入新评论 我也希望始终保持所有用户的显示 代码 div div
  • 古老的“字幕”标签的替代品?

    marquee 标签的标准等效项是什么 我正在寻找 HTML C asp NET 或 ASPX jquery java 脚本的解决方案 marquee 标签未包含在标准中 因为它是 视觉 标签 而不是 语义 标签 因此 您想要的任何语言都没
  • 链接无效

    我正在尝试使用以下命令创建一组指向页面中特定部分的链接 a href 符号 但它似乎不起作用 点击链接似乎没有任何反应right click gt open in a new tab更改 url 但不会移动到页面的其他部分 我使用的是火狐浏
  • save_and_open_page 已停止提供我的 CSS

    我的测试设置工作得很好 每当我打电话时 都能提供正确格式的 css 页面save and open page从测试中 然后 我设置了一些 javascript 测试 并对我的设置进行了一些更改 抱歉 我无法详细说明所有内容 我没有足够详细地
  • 在 Android 上禁用标注(上下文菜单)

    在网络应用程序中 我需要禁用移动浏览器在触摸并按住 长按 触摸目标 例如 img 或链接 我已经在使用了 webkit touch callout none 它在 iPhone 和 iPad 上运行良好 但似乎不适用于 Android 在
  • 如何使自定义 Web 组件可聚焦?

    我正在写一个自定义网络组件 https github com denilsonsa html5 knob这意味着是互动的 我如何告诉浏览器这个自定义组件应该获得焦点 我希望我的自定义元素 可以聚焦 通过选项卡导航 集中注意力时可以接收按键信
  • 使用 python 在一个 html 页面中显示分割数据框的 HTML 代码

    我是 html css 新手 所以对以 html 格式显示的数据有疑问 我有一个很长的列表 我想将其拆分并以 html 格式显示为两个单独的列 例如 而不是 Col1 Col2 1 a 2 a 3 a 4 a 5 b 6 b 7 b 8 b
  • jQuery mobile 中的文本区域高度和宽度?

    我修复了 jQuery mobile 中文本区域元素的高度 并且在纵向中得到了完美的高度和宽度 但在横向中宽度没有放大 谁能帮我 提前致谢 HTML
  • html 电子邮件内的背景图像 css - Gmail 不支持

    我想向我的用户发送如下所示的带有背景图像 css 的 html 正文电子邮件 div style width 500px height 1000px background color black background image none
  • div 中的中心文本?

    我有一个div 30px高和500px宽的 这div可以包含两行文本 一行在一行 并相应地设置样式 填充 但有时它只包含一行 我希望它居中 这可能吗 要水平居中 请使用text align center 要垂直居中 只能使用vertical
  • Bootstrap:如何将按钮组对齐在中心(垂直)

    在下面的代码中
  • 按下回车键时不刷新页面

    我遇到了一些问题 只要表单中有输入 回车键就会触发页面刷新 下面的代码 如果按下回车并且文本区域 input 中没有输入任何文本 则不会刷新页面 但是如果按下回车并且 input中有输入或者光标位于文本区域 我不确定是什么触发了它 因为 s
  • 如何使用 Scrapy 从网站获取所有纯文本?

    我希望在 HTML 呈现后 可以从网站上看到所有文本 我正在使用 Scrapy 框架使用 Python 工作 和xpath body text 我能够获取它 但是带有 HTML 标签 而且我只想要文本 有什么解决办法吗 最简单的选择是ext
  • javascript 选择自定义光标 (svg)

    我正在动态地将光标更改为悬停时的本地 svg element on mouseover function this css cursor url svgs pointer svg 9 30 auto 工作正常 但我想选择该 svg 来操纵其
  • CSS 到底如何计算相对尺寸

    我想更好地理解某些 CSS 行为 这与具体问题无关 我只是在调试网站时遇到的 让我们在固定位置的 div 中放置一个全宽图像 div img style width 100 src https via placeholder com 150
  • 如何在模态打开时防止主体滚动

    我在用着W3schools 模态脚本 https www w3schools com howto tryit asp filename tryhow css modal我想添加一个功能 防止模型打开时整个主体滚动 我根据我的需要对原始脚本做
  • 表单发布请求并存储收到的数据

    我有一个非常简单的表单 在提交时发出发布请求
  • 使用javascript动态更新css内容

    需要将 css 更新为动态值 我不确定最好的方法是什么 div style zoom 1 div 缩放级别将根据窗口大小调整触发 应用程序将相应缩放 我将此应用程序加载到 cordova 中并让它在 iPAD 中运行 然后我意识到需要使用
  • 使用 CSS 折叠和展开元素

    我正在尝试构建一个页面 加载时仅可见标题 并且 当用户单击标题时 每个标题下方的表格会在隐藏和显示状态之间切换 我的限制是只能在 CSS 中执行此操作 这是我到目前为止想到的 https jsfiddle net Argoron c1ypx

随机推荐

  • SparkCore

    第1章 RDD概述 1 1 什么是RDD RDD Resilient Distributed Dataset 叫做弹性分布式数据集 是Spark中最基本的数据抽象 代码中是一个抽象类 它代表一个弹性的 不可变 可分区 里面的元素可并行计算的
  • Linux环境开发工具(2)gdb调试工具+Makefile自动化构建工具

    Linux环境开发工具 2 gdb调试工具 Makefile自动化构建工具 Linux编译器 gcc g 使用 程序编译过程 重要概念 函数库 静态库与动态库 gcc选项 gdb使用 具体命令 Makefile 工具 使用过程 项目清理 关
  • 数字藏品是什么?

    有人说 任何东西都可以成为数字藏品 数字藏品是指通过区块链技术生成具有独特身份凭证的数字作品或艺术品 可以通过数字图片 音乐 视频 3D模型 电子门票 数字纪念品等形式进行展示 阿里巴巴 腾讯 京东 百度等互联网公司都推出了数字藏品平台或产
  • PMD使用与代码质量

    最近项目组要求使用PMD工具 通过自定义规则来检查代码 接录部分文档内容如下 PMD介绍 PMD是一种开源分析Java代码错误的工具 与其他分析工具不同的是 PMD通过静态分析获知代码错误 也就是说 在不运行Java程序的情况下报告错误 P
  • python100以内所有偶数-Python3基础 list 推导式 生成100以内的偶数列表

    Python 3 7 0 OS Ubuntu 18 04 1 LTS IDE PyCharm 2018 2 4 Conda 4 5 11 typesetting Markdown code coder Ubuntu source activ
  • Ubuntu系统预处理、编译、汇编、链接指令

    创建并编辑 c程序文件 gedit 1 c 以1 c为例 在编辑器中输入如下代码并保存 include
  • 基础学习5-centos7调整磁盘大小

    1 建立并查看物理磁盘 fdisk l dev sdb Disk dev sdb 10 7 GB 10737418240 bytes 20971520 sectors Units sectors of 1 512 512 bytes Sec
  • 静态Web服务器-命令行启动动态绑定端口号

    学习目标 能够写出获取终端命令行参数动态绑定端口号的web服务器程序 1 开发命令行启动动态绑定端口号的静态web服务器 实现步骤 获取执行python程序的终端命令行参数 判断参数的类型 设置端口号必须是整型 给Web服务器类的初始化方法
  • 2020-02-26

    请教大家一个AD的问题困扰多少的问题 AD10原理图复制一个器件 比如R1 正常复制粘贴还是R1 通过SHIFT拖动是R2 那如果我原理图中原本就有R2了 还是会有重复的现象 怎样复制粘贴会生成一个原理图中没有的位号呢
  • Splunk HEC 取发送数据 服务器的hostname

    1 背景 最近Client 发送数据到 Splunk HEC 发现对方hostname 没有取到 都是HEC 的VIP 地址 这个就不能发现是那个host 发过来的数据 下面查了下文档 发现Splunk 是可以跟踪发送数据的host 的 主
  • 【计算机网络】UDP协议

    目录 1 UDP协议头部格式 2 UDP协议的特点 2 1 无连接 2 2 不可靠 2 3 面向数据报 2 4 有接收缓冲区 没有发送缓冲区 2 5 大小受限 3 基于UDP的应用层协议 4 UDP协议与TCP协议对比 5 经典面试题 1
  • 基于.NET的企业级软件开发

    企业级开发最好基于一些成熟的框架 从而将主要精力集中到领域模型的设计上 1 UI与业务逻辑的隔离 在web领域可以采用ASP NET MVC框架 2 业务逻辑与DB的隔离 可以采用Entity Framework框架 3 业务逻辑中涉及工作
  • 毕业设计-基于机器视觉的水表读数智能识别系统-OpenCV

    目录 前言 课题背景和意义 实现技术思路 一 系统总体方案设计 二 图像预处理的研究与实现 三 识别区域定位及字符分割的研究与实现 实现效果图样例 最后 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备
  • 分治算法(Java)

    想必大家通过算法的名字就已经明白了 这个算法的过程 一个是分 一个是治 那么我为什么要使用这种算法呢 因为当前的问题是我们使用现有的方法是解决不了的 所以我们需要将一个复杂的问题分成两个或者是更多个相同或相似的子问题 然后再一我们已有的方法
  • 【detectron2】注册、训练、推断自己的数据集

    一 注册自己的数据集 使用detectron2训练自己的数据集 第一步要注册自己的数据集 首先保证自己的数据集标注是coco格式 就可以使用load coco json加载自己的数据集并转化为detectron2的专有数据格式 使用Data
  • C++中关于枚举的使用(enum)

    首先加入头文件 include
  • mysql中字段长度到底是字符数还是字节数?

    这个问题 困惑了很多新学者 今天就给大家来测试测试 首先来给个定长的字段类型 因为这样好看效果 超出的会被截取 create table test id int 10 not null auto increment test name ch
  • 在VMware ESXi服务器上配置NAT上网

    文章目录 前言 一 vSphere Client上操作 1 配置网络环境 2 创建软件路由 3 虚拟机设置 总结 相关文章 前言 在使用VMware workstation的时候 我们经常以NAT的方式配置虚拟机的网络 与桥接方式相比 这样
  • spring之application.yml配置

    server port 18080 context path netty logging config classpath logback xml 文件上传下载大小 速度配置 spring http multipart max file s
  • 15_弹性盒布局

    一 弹性盒子的基本概念 弹性盒属性的使用 概念 在父级元素设置设置弹性盒属性 容器 所有的子级元素会在父级容器的轴向上排列 项目 作用 控制所有的子级元素在父级元素上的排列位置 如何形成弹性盒 属性 display 显示方式 属性值 fle