父元素flex:1 高度却被子元素撑开的问题
问题
当父元素设置了flex: 1; 的情况下,想在其中子元素超出父元素高度的情况下,产生滚动条,在父元素区域滚动。由于子元素高度不固定,故父元素设置为display: flex; flex-direction: column; 子元素设置flex: 1; overflow: auto;。但是遇到问题,当子元素高度超过父元素高度时,不会在父元素区域产生滚动条,而是超出了父元素区域,在上层产生了滚动条。
<div style="display: flex; height: 100px; width: 500px; border: red solid;"><div style="flex: 1; display: flex; flex-direction: column;">祖父元素<div style="flex: 1; display: flex; flex-direction: column; border: yellow solid;">父元素<div style="flex: 1; overflow: auto; border: blue solid;"><div>子元素</div><div>子元素</div><div>子元素</div><div>子元素</div><div>子元素</div><div>子元素</div><div>子元素</div><div>子元素</div><div>子元素</div><div>子元素</div></div></div></div></div>

解决方法 min-height: 0
给父元素设置 min-height: 0;
<div style="min-height: 0; flex: 1; display: flex; flex-direction: column; border: yellow solid;">父元素</div>

问题原因
MDN Flex min-size
对于flex容器而言,其默认的min-width和min-height都是auto,会在实际的高度和用户设置的高度二者之间选择最小值 。在上述情况下,并没有设置min-height,所以min-height会取实际的高度,即子元素的高度,所以父元素的高度其实也增加了。
对于子元素而言,父元素的高度就是其自身的高度,那么也不会触发滚动条。
所以并不是设置的flex:1;无效,而是父元素的min-height增大导致了此问题。
height: 0
给父元素设置height: 0;也同样可以解决这个问题。其原因在于,在高度计算中,会取min-height和height中较小的那个。父元素设置了height: 0;之后,父元素的高度成了0,父元素的flex: 1; 使其占满整个可用空间,而子元素的高度超出了这个控件,所以产生了滚动条。
但是这不是问题产生的原因,只是一种解决方法。嗯嗯。
相关文章:
父元素flex:1 高度却被子元素撑开的问题
问题 当父元素设置了flex: 1; 的情况下,想在其中子元素超出父元素高度的情况下,产生滚动条,在父元素区域滚动。由于子元素高度不固定,故父元素设置为display: flex; flex-direction: column; 子元素设置flex: 1; overflow: auto;…...
【LUA】mac状态栏添加天气
基于网络上的版本修改的,找不到出处了。第一个摸索的lua脚本,调了很久。 主要修改:如果风速不大,就默认不显示,以及调整为了一些格式 local urlApi http://.. --这个urlApi去申请个免费的就可以了 然后打开对应的json…...
网络原理-TCP/IP(1)
应用层 我们之前编写完了基本的java socket, 要知道,我们之前所写的所有代码都在应用层中,都是为了完成某项业务,如翻译等.关于应用层,后面会有专门的讲解,在此处先讲一下基础知识. 应用层对应着应用程序,是程序员打交道最多的一层,调用系统提供的网络api写出的代码都是应用层…...
C# Socket 允许控制台应用通过防火墙
需求: 在代码中将exe添加到防火墙规则中,允许Socket通过 添加库引用 效果: 一键三联 若可用记得点赞评论收藏哦,你的支持就是写作的动力。 源地址: https://gist.github.com/cstrahan/513804 调用代码: private static void …...
Centos安装mysql/mariadb
1,yum install mysql-apt-config_0.8.12-1_all.deb 似乎后面会有冲突,不建议安装mysql了,直接mariadb吧 2, No such command: uninstall. Please use /usr/bin/yum --help It could be a YUM plugin command, try: "yum install dnf-command(uninstall)" It…...
2024 年, Web 前端开发趋势
希腊哲学家赫拉克利特认为,变化是生命中唯一不变的东西。这句话适用于我们的个人生活、行业和职业领域。 尤其是前端开发领域,新技术、开发趋势、库和框架不断涌现,变化并不陌生。最近发生的一些事件正在改变开发人员构建网站和 Web 应用的方…...
Mysql 插入数据
1 为表的所有字段插入数据 使用基本的INSERT语句插入数据要求指定表名称和插入到新记录中的值。基本语法格式为: INSERT INTO table_name (column_list) VALUES (value_list); 使用INSERT插入数据时,允许列名称列表column_list为空,此时&…...
【每日一题】YACS 473:栈的判断
这是上海计算机学会竞赛 P 473 P473 P473:栈的判断( 2021 2021 2021年 8 8 8月月赛 丙组 T 4 T4 T4)标签:栈题意:给定 n n n个数字,已知这些数字的入栈顺序为 1 , 2 , 3... , n 1,2,3...,n 1,2,3...,n&…...
Python - 整理 MySQL 慢查询日志
在实际的数据库管理和性能优化工作中,MySQL 慢查询日志(slow query log)是一个重要的工具。当系统中的 SQL 查询花费的时间超过阈值时,MySQL 会将这些查询记录在慢查询日志中,方便进行性能分析和调优。 本文将介绍如何…...
Python算法题集_无重复字符的最长子串
本文为Python算法题集之一的代码示例 题目3:无重复字符的最长子串 说明:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "a…...
12.Elasticsearch应用(十二)
Elasticsearch应用(十二) 1.单机ES面临的问题 海量数据存储问题单点故障问题 2.ES集群如何解决上面的问题 海量数据存储解决问题: 将索引库从逻辑上拆分为N个分片(Shard),存储到多个节点单点故障问题&a…...
linux -- 内存管理 -- SLAB分配器
SLAB分配器(slab allocator) SLAB分配器用于小内存空间管理,基本思想是:先利用页面分配器分配出单个或多个连续的物理页面,然后再此基础上将整块页面分割为多个相等的小内存单元,来满足小内存空间分配的需…...
【MySQL】学习如何通过DQL进行数据库数据的条件查询
🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 💫个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-63IIm2s5sIhQfsfy {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…...
TS:子类型关系
子类型关系 1、概念1.1 里氏替换原则1.2 自反性1.3 传递性 2、顶端类型 和 尾端类型3、字面量类型4、undefined 和 null5、枚举类型6、函数类型6.1 变型6.1.1 协变6.1.2 逆变6.1.3 双变 6.2 函数类型间的子类型关系6.2.1 函数参数数量6.2.2 函数参数类型A、非严格函数类型检查B…...
IDEA插件(MyBatis Log Free)
引言 在Java开发中,MyBatis 是一款广泛使用的持久层框架,它简化了SQL映射并提供了强大的数据访问能力。为了更好地调试和优化MyBatis应用中的SQL语句执行,一款名为 MyBatis Log Free 的 IntelliJ IDEA 插件应运而生。这款插件旨在帮助开发者…...
Redis(八)哨兵机制(sentinel)
文章目录 哨兵机制案例认识异常 哨兵运行流程及选举原理主观下线(Subjectively Down)ODown客观下线(Objectively Down)选举出领导者哨兵选出新master过程 哨兵使用建议 哨兵机制 吹哨人巡查监控后台master主机是否故障,如果故障了根据投票数自动将某一个从库转换为新…...
[数据结构]-哈希
前言 作者:小蜗牛向前冲 名言:我可以接受失败,但我不能接受放弃 如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 本期学习目标&…...
宝塔控制面板配置SSL证书实现网站HTTPS
宝塔安装SSL证书提前申请好SSL证书,如果还没有,先去Gworg里面申请,一般几分钟就可以下来,申请地址:首页-Gworg官方店-淘宝网 一、登录邮箱下载:Gworg证书文件目录 ,都会有以下五个文件夹。宝塔…...
elasticsearch优化总结
参考: https://docs.docker.com/manuals/ Manuals | Docker Docs Run Elasticsearch locally | Elasticsearch Guide [8.12] | Elastic 让你的ES查询性能起飞:Elasticsearch 查询优化攻略“一网打尽” - 知乎...
图论第三天|127. 单词接龙 841.钥匙和房间 463. 岛屿的周长 1971. 寻找图中是否存在路径 684.冗余连接 685.冗余连接II
目录 Leetcode127. 单词接龙Leetcode841.钥匙和房间Leetcode463. 岛屿的周长Leetcode1971. 寻找图中是否存在路径Leetcode684.冗余连接Leetcode685.冗余连接II Leetcode127. 单词接龙 文章链接:代码随想录 题目链接:127. 单词接龙 思路:广搜搜…...
嵌入式Boa Web服务器搭建与优化指南
1. 嵌入式轻量级Web服务器搭建实战:Boa移植与应用 作为一名在嵌入式领域摸爬滚打多年的工程师,我深知在资源受限环境下搭建Web服务的痛点。今天要分享的Boa服务器方案,正是解决这类问题的利器——这个仅有70KB的可执行文件,却能稳…...
Unity3D实战:从零构建竖屏飞机大战游戏
1. 竖屏游戏的基础设置 第一次打开Unity时,默认是横屏模式。我们需要做的第一件事就是把游戏改成竖屏。这个操作看似简单,但很多新手容易忽略几个关键点。在Game窗口右上角找到分辨率设置,点击加号新建一个预设。这里要特别注意选择"Asp…...
ESP8266对接GLPi的轻量级IoT工单库
1. 项目概述 glpi_esp8266 是一款专为 ESP8266 系列 Wi-Fi 微控制器设计的轻量级 C 库,其核心使命是构建物联网终端设备与企业级 IT 服务管理(ITSM)平台 GLPi 之间的标准化通信桥梁。该库并非直接对接 GLPi 的 REST API,而是通过…...
突破手游操控瓶颈:QtScrcpy虚拟映射技术全解析
突破手游操控瓶颈:QtScrcpy虚拟映射技术全解析 【免费下载链接】QtScrcpy Android real-time display control software 项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy 在移动游戏蓬勃发展的今天,触控操作的局限性日益凸显。竞技类…...
OpenClaw(小龙虾)Windows 避坑安装指南
最近“小龙虾”(OpenClaw)可以说是 AI 圈最火的话题之一,这个能真正执行任务的 AI 智能体让无数人看到了自动化的无限可能。作为一个热衷于折腾各种 AI 工具的开发者,我也第一时间在 Windows 上尝试部署,结果一上来就被…...
低成本搭建方案:树莓派运行OpenClaw连接千问3.5-9B云接口
低成本搭建方案:树莓派运行OpenClaw连接千问3.5-9B云接口 1. 为什么选择树莓派OpenClaw组合 去年冬天,我在整理个人知识库时被重复的文件归档工作折磨得苦不堪言。当时尝试过各种自动化工具,要么需要昂贵的云服务订阅,要么对硬件…...
从零构建ESP32 TWAI CAN库:驱动CyberGear微电机的实践指南
1. ESP32 TWAI CAN库开发背景 第一次接触小米CyberGear微电机时,我遇到了一个棘手的问题:市面上找不到现成的ESP32控制库。这款性能强劲的微型电机采用CAN总线通信,而ESP32内置的TWAI控制器(其实就是CAN控制器)正好可…...
从机械臂到无人机:手把手教你用C++实现一个简易PID控制器(附完整代码)
从机械臂到无人机:手把手教你用C实现一个简易PID控制器(附完整代码) 在嵌入式开发和机器人控制领域,PID控制器就像一位不知疲倦的调音师,时刻调整着系统的"音准"。想象一下,当你操控无人机时&am…...
ComfyUI实战:LivePortrait对口型技术深度解析,打造动态人像新体验
1. LivePortrait对口型技术:让静态人像活起来的黑科技 第一次看到LivePortrait生成的效果时,我盯着屏幕愣了三分钟——一张普通的照片竟然能跟着我的语音节奏自然地"说话",连嘴角的微妙颤动都和真人无异。这种魔法般的体验&#x…...
嵌入式工程师面试通关指南:从基础理论到实战调试的30个核心考点
1. 嵌入式系统基础概念 1.1 单片机与微处理器的本质区别 很多刚入门的工程师容易混淆单片机和微处理器的概念。简单来说,单片机就是"片上系统",它把CPU、存储器、I/O接口等核心部件都集成在了一个芯片里。我在设计智能家居控制器时就深有体会…...
