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

特定断点下调整flexbox项目宽度与排序时100%宽度失效问题

问题原因

flex容器默认flex-wrap属性值为nowrap,即使子元素总宽度超过容器宽度,也会强制所有元素在同一行展示,自动压缩子元素宽度,所以你设置的100%宽度不会生效。

解决方案

只需要修改两处CSS即可:

  • 给.container添加flex-wrap: wrap属性,允许子元素溢出时自动换行
  • 给所有flex子元素添加flex-shrink: 0,避免子元素被自动压缩,确保设置的宽度完全生效

修改后的完整CSS代码如下:

.container {
  display:flex;
  flex-wrap: wrap; /* 新增:允许换行 */
  text-align:center;
  color:white;
}
.prev {
  order: 2;
  flex-shrink: 0; /* 新增:禁止自动收缩 */
  background:red;
  height:50px;
  width:50%;
}
.next {
  order:3;
  flex-shrink: 0; /* 新增:禁止自动收缩 */
  width:50%;
  background:red;
  height:50px;
}
.content {
  order: 1;
  flex-shrink: 0; /* 新增:禁止自动收缩 */
  width:100%;
  background:black;
  height:50px;
}

@media screen and (min-width:1920px) {
  .prev {
    order: 1;
    width:25%;
  }
  .next {
    order:3;
    width:25%;
  }
  .content {
    order: 2;
    width:50%;
  }
}

HTML代码不需要修改,修改后即可完全匹配你的需求:

  1. 视口≥1920px时,三个元素按prev、content、next顺序同行排列,宽度分别为25%、50%、25%
  2. 视口<1920px时,content占100%宽度单独占第一行,prev、next按顺序排在第二行各占50%宽度

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 01:36:03