疑惑现象:

弹性布局父元素的height=所有子元素的元素高度,而子元素又能继承父元素高度(height:100%)。

可能过程:

先使用子元素总高度撑起父元素高度,子元素再继承父元素高度。

测试代码:

<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body style="border: 2px solid black;box-sizing: border-box;">
<div style="border:2px solid red;display: flex;"><div style="height: auto;"><div style="height: 100%;border: 5px solid yellow;box-sizing: border-box;"><h1>1</h1><input><input><input><input></div><div style="height: 100%;border: 5px solid green;box-sizing: border-box;"><h1>2</h1><input><input><input><input></div></div>
</div>
</body>
</html>

博文引用-启发:

由多次测试我猜测是首次渲染之后,父元素未设置高度,子元素即使设置height:100%;
获取不到父元素高度,高度由子元素的内容决定。
而dispaly:flex;弹性布局会动态计算元素的高度,在确定最大的元素高度之后,相当于父元素高度确定,再由于height: auto;的存在由浏览器计算出其他子元素的高度,最终使得各个子元素高度统一。

其他:

有明白具体过程的嘛?欢迎留言指教。

相关参考:
CSS height 及 flex布局一则

CSS 弹性布局(flex)的height计算相关推荐

  1. CSS 弹性布局/flex布局最后一行左对齐

    设计案例: 左对齐前 左对齐后 html: <h1 class="module-title">核心产品</h1> <ul class="co ...

  2. CSS弹性布局 Flex属性

    flex是Flexible Box的缩写,就是弹性盒子布局的意思 通过flex我们可以解决元素居中问题,自动弹性伸缩,适配不同大小的屏幕和移动端. Flex布局简介 序号 简记 术语 1 二成员 容器 ...

  3. css 弹性盒子 flex布局

    目录 css弹性盒子flex 布局 什么是flex 常见父项属性 概念与案例 主轴与侧轴 flex-direction设置主轴的方向 justify-content 设置主轴上的子元素排列方式 fle ...

  4. CSS 的弹性布局(flex) ,是什么?

    一.弹性布局 是什么? 元素根据窗口大小变化而自动伸长或缩短,使得整个页面格式保持不变. 二.怎么使用? 1.使用方法 /* 1.父元素中增加 display 属性:*/ display: flex; ...

  5. css弹性布局笔记一(垂直居中、水平居中、居中)(display:flex)

    CSS弹性布局,需要一个容器,容器中至少包含一个以上的元素,以下代码包含子元素垂直居中.水平居中.居中三种情况 <html> <head> <style type=&qu ...

  6. css布局之弹性布局flex

    1. 弹性布局作用 作用:弹性布局flex能按照我们的设置自动计算各子元素之间的间距并将之布局好,而不需要像定位那样手动计算布局. 2.弹性布局的定义和属性 弹性布局是定义在一个父容器中,加上disp ...

  7. 使用css弹性布局,让页面footer底部固定

    在前端开发过的工作中,footer永远固定在底部的需求.也就是说一个Footer元素如何粘住底部,使其无论内容多或者少,Footer元素始终紧靠在浏览器的底部.我们知道,当内容足够多可以撑开底部到达浏 ...

  8. 弹性布局(Flex布局)

    弹性布局(Flex布局) 文章目录 弹性布局(Flex布局) 绪论 Flex布局是什么? Flex布局的基本概念 Flex容器的属性 以下六个属性设置在Flex容器上 flex-direction属性 ...

  9. Flutter: 弹性布局Flex(Expanded)、流式布局Wrap、Flow

    用Android原生实现流式布局[实现例如app的很多标签]需要自定义View继承自ViewGroup,然后代码量也不小. 相关自定义View实现流式布局,请参考这位老兄的博客: https://bl ...

  10. CSS3多列布局 columns 弹性布局 flex

    多列布局columns 多列布局可以控制页面内容的排版方式,可以将文本内容设计成像报纸一样的多列布局. 属性 示例 含义 column-count column-count: 3; 将元素内部分割成3 ...

最新文章

  1. scipy.sparse.coo_matrix、csr_matrix、lil_matrix、dia_matrix
  2. 抛弃windows用linux来工作吧
  3. [FJOI2016]建筑师(斯特林数)
  4. vue定义一个变量并显示
  5. jquery实现倒计时
  6. ionic 实现仿苹果手机通讯录搜索功能
  7. 手机:导致手机发烫的原因有哪些?
  8. 7-10 先序序列创建二叉树,输出先序序列、中序序列、后序序列并输出叶子结点数 (10 分)
  9. 自动拼图android github,GitHub - zero0011/Puzzle: 拼图游戏 , 可自动实现 拼图操作
  10. 使用flask开发web应用
  11. 自己动手写操作系统(一)
  12. 【宋红康 MySQL数据库 】【高级篇】【10】索引的创建与删除_MySQL8.0的索引新特性
  13. Python周刊518期
  14. Kaggle--房价预测
  15. Linux内核网络分层模型——skb核心操作
  16. 在outlook上邮件可以撤回?邮件撤回成功后对方还能看到吗?
  17. 在maven 官网上下载其他版本
  18. 车内静谧性超越埃尔法?走进腾势D9身价上亿的NVH实验室
  19. CI持续集成系统环境--Gitlab+Gerrit+Jenkins完整对接
  20. 知识图谱系列-2-知识图谱发展历程及其分类

热门文章

  1. 电影天堂React Native客户端V2.0
  2. 当心,前面有地雷——C语言实现简单扫雷小游戏
  3. [3月总结,4月计划]
  4. Web前端设计基础测试
  5. html中颜色怎么设置,html中按钮颜色怎么设置
  6. cocos2d-x Android版游戏之中国移动SDK嵌入
  7. FFmpeg将图像数据编码为H264视频
  8. win10怎么下载python_w10怎么下载安装python|w10下载安装python的方法
  9. windows日志删除工具
  10. PC与三菱PLC 485BD模块 无协议通讯模式