新闻中心

如何在CSS中使用Flexbox制作侧边栏弹性布局_flex-grow与flex-shrink配合

2025-11-28
浏览次数:
返回列表
侧边栏弹性布局可通过flex-grow与flex-shrink配合实现,1. 将容器设为display: flex,侧边栏固定宽度,主内容区设flex-grow: 1以填充剩余空间;2. flex-grow控制扩展比例,数值越大占用空间越多;3. flex-shrink控制压缩比例,设为0可防止侧边栏被压缩;4. 推荐使用flex简写,如sidebar设flex: 0 0 200px,main-content设flex: 1 1 0,确保侧边栏固定、主内容区灵活响应。

如何在css中使用flexbox制作侧边栏弹性布局_flex-grow与flex-shrink配合

使用Flexbox制作侧边栏弹性布局时,flex-growflex-shrink 的配合能实现内容区域自动填充、侧边栏保持固定或按比例伸缩的效果。关键在于合理设置主轴方向和子元素的弹性属性。

1. 基础结构:创建Flex容器

将父容器设为 display: flex,通常侧边栏和主内容区水平排列:

.container {
  display: flex;
  height: 100vh; /* 占满视口高度 */
}
.sidebar {
  width: 200px; /* 固定宽度侧边栏 */
}
.main-content {
  flex-grow: 1; /* 自动填充剩余空间 */
}

此时,主内容区会自动拉伸填满剩余宽度,侧边栏保持200px不变。

2. 使用 flex-grow 控制扩展能力

flex-grow 定义子元素在有剩余空间时的放大比例。默认值为0,表示不扩展。

  • 设置 flex-grow: 1 的元素会占据所有可用空间
  • 多个元素设置不同值时,按比例分配(如1和2,则后者得2/3空间)

例如让主内容区在多列布局中占更大比例:

.main-content { flex-grow: 3; }
.aside { flex-grow: 1; }

3. 使用 flex-shrink 控制压缩行为

flex-shrink 控制子元素在空间不足时的收缩比例,默认为1。

来画数字人直播 来画数字人|直播|

来画数字人自动化|直播|,无需请真人主播,即可实现24小时|直播|,无缝衔接各大|直播|平台。

来画数字人直播 57 查看详情 来画数字人直播
  • 设为0时,元素不会被压缩(适合保护侧边栏最小宽度)
  • 设为大于0的值时,按比例缩小

防止侧边栏被压扁:

.sidebar {
  width: 200px;
  flex-shrink: 0; /* 禁止压缩 */
}
.main-content {
  flex-grow: 1;
  flex-shrink: 1;
}

4. 综合使用 flex-grow 与 flex-shrink

实际开发中推荐使用简写属性 flex,格式为:flex: flex-grow flex-shrink flex-basis

.sidebar {
  flex: 0 0 200px; /* 不扩展、不压缩、基础宽度200px */
}
.main-content {
  flex: 1 1 0; /* 可扩展、可压缩、从0开始增长 */
}

这种写法确保侧边栏固定,主内容区灵活响应容器变化。

基本上就这些。掌握 flex-grow 与 flex-shrink 的配合,再结合 flex-basis 或 width,就能轻松实现各种侧边栏布局需求。

以上就是如何在CSS中使用Flexbox制作侧边栏弹性布局_flex-grow与flex-shrink配合的详细内容,更多请关注其它相关文章!


# 更大  # 如何建设互联网站  # 四平seo查询技巧  # 漳州网站建设的微博  # SEO常用指令的用法  # 福建线上营销推广  # 互联网上市营销推广平台  # 西安推广运营招聘网站  # 包装印刷的营销推广方案  # 什么网站可以优化结果  # 谷歌seo 内容  # 各大  # css  # 多个  # 就能  # 不均匀  # 按比例  # 中不  # 如何在  # 推荐使用  # 设为  # 排列  # 弹性布局  # ai 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: 在J*a中如何开发简易博客标签推荐系统_博客标签推荐项目实战解析  必由学官方平台入口 必由学在线课堂登录地址  字由网在线版登录地址 字由网网页版安全入口  微信聊天记录怎么加密_微信聊天记录加密方法  如何使用 Excel 发布器与 Power BI 分享 Excel 洞察  虚幻5科幻题材ARPG大作遭取消!本是《奇异人生》厂商新作  C++如何操作大型数据集_使用C++流式处理(Streaming)技术避免一次性加载大文件  HuggingFaceEmbeddings中向量嵌入维度调整的限制与理解  天猫双十一预售商品怎么退款_天猫双十一预售退款操作指南  中兴Axon42Ultra怎样在文件App筛图_iPhone中兴Axon42Ultra文件App筛图【图片筛选】  EMS快递官网app_中国邮政速递物流手机客户端  4399免费游戏网址入口 4399小游戏免费入口点开即玩  电脑IP地址怎么查 查看本机IP地址的几种方法  J*a递归快速排序中静态变量导致数据累积的陷阱与解决方案  Win11怎么设置开机NumLock亮 Win11修改注册表InitialKeyboardIndicators值  必由学官网入口 必由学教师登录入口  深入理解J*a链表中的IPosition接口与使用  J*aScript实现动态背景色下的文本与按钮颜色自适应调整  C++如何使用AddressSanitizer(ASan)_C++调试工具中检测内存访问错误的利器  Win10桌面图标出现小盾牌怎么办 Win10去除UAC图标教程【解决】  Go Martini框架:动态服务解码后的图片内容  yandex入口引擎手机版 yandex安卓版下载入口  J*aScript中安全有效地处理localStorage字符串数据  mcjs网页版在线存档 mcjs云存档登录入口  CSS条件样式无法按设备触发怎么排查_media条件语句正确设置解决触发问题  KFC早餐时段怎么领特惠代码_KFC早餐订餐优惠代码获取与使用说明  Safari浏览器输入栏卡顿如何解决 Safari搜索建议与缓存清理  Win11怎么用U盘重装系统 Win11制作启动盘并重装系统完整教程【详解】  ArrayList与LinkedList操作复杂度详解:遍历与修改  Lar*el Form Request中唯一性验证在更新操作中的正确实现  Python中高效访问嵌套字典与列表中的键值对  单射、满射与双射的关系 一文理清所有逻辑  手机CPU怎么影响游戏体验_手机CPU对游戏性能的影响分析  J*aScript map 迭代中检测空数组元素的有效方法  微博网页版直接访问 微博网页版账号管理快速入口  Golang如何使用const iota_Go iota常量计数器讲解  抖音网页版快捷访问 抖音网页版网页版入口操作教程  解决J*aScript中重复选择项的确认对话框显示问题  Lar*el如何生成PDF或Excel文件_Lar*el文档导出工具与使用教程  AI抖音网页版免费视频入口 AI抖音网页端最新视频实时观看  离线运行Go语言之旅:本地部署与GOPATH配置指南  J*aScript map 方法中处理循环元素为空数组的策略  Eclipse怎么运行工程_Eclipse工程运行配置说明  天猫2025双十一0点秒杀攻略 天猫爆款抢购时间  随机参数递归函数的基准调用次数与时间复杂度探究  在Socket.IO连接中实现Access Token自动更新与动态重连  Go语言HTML解析:利用Goquery精准获取指定元素内容  qq游戏大厅官方下载_qq游戏免费下载安装入口  晋江读书网页版在线登录 晋江读书电脑版官网  自定义Bag-of-Words实现:处理带负号的词汇权重 

搜索