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

如何解决Chakra UI的Box/Flex项在平板移动端无法占100%宽度的问题

问题原因

经排查布局异常由2个代码问题共同导致,你页面其他Section下的组件运行正常,是因为其他组件都是默认块级宽度100%,而该调度组件的小屏幕分支存在属性误用和缺失:

  • 小屏幕分支下的外层Flex组件未显式设置100%宽度,Chakra UI的Flex组件默认宽度仅适配内容,不会自动占满父容器
  • 误用了仅适用于Grid布局的justifyItems属性,Flex布局下要实现子项拉伸适配需使用对应Flex属性

修复方案

直接修改ScheduleComponent组件中小屏幕分支的代码即可:

// 原代码
<Flex justifyItems="stretch">
// 修改为
<Flex w="100%" alignItems="stretch">

如果修改后仍有适配问题,可以在<Box py={['2', '4', '8']}>节点上也增加w="100%"属性,确保父容器也占满可用宽度。

补充验证点

如果修改后仍有留白,可以额外检查2个点:

  • MobileDaysCellList、MobileEventsFlex组件是否未设置100%宽度,导致内部内容无法撑满外层Flex
  • HoursCellList组件的移动端宽度是否固定,避免出现宽度溢出挤压右侧内容空间

内容的提问来源于stack exchange,提问作者Marko B.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 06:00:05