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

HTML表格中flex容器内input在Firefox下宽度不生效问题

表格内Flex容器中Input跨浏览器适配问题

问题背景

在表格单元格内,存在一个设置了display:flex且固定宽度的容器,容器内的input元素仅配置了overflow:hidden。此时Chrome会自动将input收缩至容器宽度,但Firefox不会——input会保持自身内容宽度,超出容器范围。虽然添加width:100%能让Firefox正常显示,但需求是不使用该样式。

注:已向Firefox官方反馈此差异,官方判定该表现为正确行为,并非Bug。

解决方案

方案1:为Input添加flex: 1

利用flex布局的子元素属性,让input占据容器的可用空间,同时保留overflow:hidden截断超出内容:

div {
  display: flex;
  width: 50px;
}

.myInput {
  overflow: hidden;
  flex: 1; /* 关键属性 */
}

方案2:为Flex容器添加min-width: 0

Firefox中flex容器的子元素默认min-width:auto,会优先保留内容宽度。给容器设置min-width:0后,子元素可收缩至容器宽度范围内:

div {
  display: flex;
  width: 50px;
  min-width: 0; /* 关键属性 */
}

.myInput {
  overflow: hidden;
}

方案3:为Input设置min-width: 0

直接给input设置min-width:0,打破其默认最小宽度限制,使其能跟随容器宽度收缩:

div {
  display: flex;
  width: 50px;
}

.myInput {
  overflow: hidden;
  min-width: 0; /* 关键属性 */
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 08:12:11