You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让背景延伸超出固定宽度带overflow属性的父容器范围

问题原因

你设置固定宽度的父容器开启滚动后,内部每行的flex容器默认会继承父容器的宽度(也就是40rem)。你每行内部的子元素总宽度已经远大于40rem,超出的部分属于flex容器的溢出内容,但flex容器本身的宽度仍然只有40rem,所以背景色只能覆盖到40rem的范围,向右滚动后溢出区域自然没有背景填充。

解决方案

只需给每行的flex容器添加width: fit-content属性,让行的宽度由内部实际内容的总宽度撑开,背景色就会覆盖整行所有区域,包括溢出滚动的部分。
如果需要兼容旧版本浏览器,也可以把行的display: flex替换为display: inline-flex,二者效果一致,inline-flex元素的宽度默认由内容撑开。

修改后的核心代码

你只需要调整行元素的样式即可,修改后的行代码如下:

{rows.map((row: any, index) => (
  <div style={{ 
    background: index % 2 === 0 ? 'orange' : 'white', 
    display: 'flex', 
    width: 'fit-content' /* 新增这一行即可生效 */
  }}>
    {row.map((label: string) => (
      <div style={{ margin: '0 5rem', width: '15rem' }}>{label}</div>
    ))}
  </div>
))}

内容的提问来源于stack exchange,提问作者Jimmy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 06:45:04