【多层flex嵌套自适应布局,flex: 1失效】

多层flex嵌套自适应布局,flex: 1失效的问题

// 这段简单的代码要实现最外层一个既定高度盒子 box,使用 flex-column 布局页面
// 上方部分内容高度固定,如下 box1
// 盒子剩余部分 box2 再次使用 flex 进行布局
// box2 部分内容高度固定,希望剩余部分高度能为盒子剩余高度进行滚动
// 实际发现,如果 box2 内容高度超出盒子剩余部分高度,盒子内其他标签高度被挤压变形
// 需要在 box2 标签添加 overflow: auto 属性避免盒子被撑开
// 效果图附在下方

<div style={{ height: '300px', display: 'flex', flexDirection: 'column' }}>
  <div className="box1" style={{ height: '100px', background: 'orange' }}>
    11111
  </div>
  <div className="box2" style={{ flex: 1, display: 'flex', flexDirection: 'column', background: 'skyblue' }}>
    <div style={{ height: '100px', background: 'pink' }}>
      22222
    </div>
    <div style={{ flex: 1, overflow: 'auto' }}>
      <p style={{ writingMode: 'vertical-lr' }}>
        333333333333333333333333333333
      </p>
    </div>
  </div>
</div>

样式出现问题:
蓝色盒子文字竖向排列,导致最上方橘色盒子原来的 100px 被挤压变形
样式修复后:
进行样式优化后,下方蓝色盒子高度为除去固定标签高度的剩余部分,超出滚动

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值