css 想快速实现两栏可伸缩布局怎么办_利用 css flex 设置主副栏 flex-grow
发布时间 - 2026-01-28 00:00:00 点击率:次主栏设 flex: 1 0 0(可增长、不收缩、无基准宽),副栏设 flex: 0 0 280px(不增长、不收缩、固定基准宽),容器需 display: flex 且明确 flex-direction;默认 flex-shrink: 1 会导致主栏被压缩,故必须显式禁用。
用 flex-grow 实现主副栏自动伸缩的关键逻辑
主栏占剩余空间、副栏固定宽度(或按比例收缩),核心不是给主栏设 flex: 1 就完事,而是要明确谁「不收缩」、谁「可增长」。默认情况下所有 flex 项都可能压缩(flex-shrink: 1),如果副栏内容多又没限制,它会把主栏挤变形。
- 主栏设
flex-grow: 1,且显式加flex-shrink: 0防被压缩 - 副栏设固定宽(如
width: 280px)或用flex: 0 0 auto锁死尺寸 - 容器必须有
display: flex和明确的flex-direction: row(默认就是)
为什么只写 flex: 1 常常失效
flex: 1 是 flex-grow: 1 + flex-shrink: 1 + flex-basis: 0 的简写。问题出在 flex-shrink: 1 —— 当容器宽度不够时,浏览器会按比例压缩所有 flex 项,包括你本想撑满的主栏。
- 副栏图片/文字过长 → 触发整体压缩 → 主栏变窄甚至换行
- 解决办法:主栏改用
flex: 1 0 0(即flex-grow: 1,flex-shrink: 0,flex-basis: 0) - 副栏用
flex: 0 0 280px比单纯width更稳妥,避免 margin/padding 干扰计算

完整可运行的两栏 flex 布局代码
.container {
display: flex;
}
.main {
flex: 1 0 0; /* 可增长、不收缩、无初始基准宽 */
}
.aside {
flex: 0 0 280px; /* 不增长、不收缩、基准宽 280px */
}移动端适配时容易漏掉的点
flex 布局在小屏下直接堆叠两栏很常见,但很多人忘了关掉 flex-shrink 的副作用:即使写了 @media 切成 column,若主栏仍带 flex-shrink: 1,在某些安卓 WebView 中仍可能异常压缩。
- 响应式切换时,建议用
flex-direction: column+ 重置flex值,例如:flex: 1 1 auto - 副栏在小屏下若隐藏,别只靠
display: none,否则 flex 容器仍按两栏计算——应配合flex: 0 0 0或移除元素 - iOS Safari 对
flex-basis: 0渲染略保守,加min-width: 0给主栏能进一步防溢出
主副栏伸缩看着简单,真正卡住的往往不是语法,而是 flex-shrink 默认开启和 flex-basis 的隐式行为。动手前先想清楚:谁该让,谁不让。
# css
# 浏览器
# 安卓
# safari
# ai
# ios
# 移动端适配
# 为什么
# auto
# 堆
# display
# margin
# padding
# column
# flex
# webview
# 切成
# 看着
# 很多人
# 写了
# 会把
# 又没
# 本想
# 解决办法
# 出在
# 或用
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何快速建站并高效导出源代码?
Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤
如何用好域名打造高点击率的自主建站?
轻松掌握MySQL函数中的last_insert_id()
Java垃圾回收器的方法和原理总结
做企业网站制作流程,企业网站制作基本流程有哪些?
Laravel如何使用Sanctum进行API认证?(SPA实战)
浅谈javascript alert和confirm的美化
如何在Windows服务器上快速搭建网站?
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
如何在Windows 2008云服务器安全搭建网站?
java获取注册ip实例
html5如何实现懒加载图片_ intersectionobserver api用法【教程】
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
如何快速查询域名建站关键信息?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析
微信推文制作网站有哪些,怎么做微信推文,急?
如何快速搭建自助建站会员专属系统?
JavaScript模板引擎Template.js使用详解
Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程
Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控
WordPress 子目录安装中正确处理脚本路径的完整指南
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
JavaScript中如何操作剪贴板_ClipboardAPI怎么用
如何登录建站主机?访问步骤全解析
Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出
如何快速上传建站程序避免常见错误?
java ZXing生成二维码及条码实例分享
今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】
Laravel如何实现API版本控制_Laravel版本化API设计方案
bing浏览器学术搜索入口_bing学术文献检索地址
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
如何在建站主机中优化服务器配置?
详解MySQL数据库的安装与密码配置
微信小程序 canvas开发实例及注意事项
如何用PHP快速搭建CMS系统?
Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】
canvas 画布在主流浏览器中的尺寸限制详细介绍
Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优
iOS正则表达式验证手机号、邮箱、身份证号等
简单实现Android验证码
微信小程序 scroll-view组件实现列表页实例代码
Laravel如何使用Blade组件和插槽?(Component代码示例)
如何用美橙互联一键搭建多站合一网站?
ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法
海南网站制作公司有哪些,海口网是哪家的?
如何撰写建站申请书?关键要点有哪些?

