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

移动端图片显示异常求助:超出项目区域并排版错乱

解决方案

咱们先拆解下问题的核心根源:

  • 你的#projects设置了固定的height:100vh,当移动端内容高度超过视口时,必然会溢出到下方的contact区域;
  • .img-wrap的Flex布局默认是横向排列,在窄屏幕下图片和文字会挤在一起,导致排版错乱,没法正常垂直逐个排列。

下面是具体的修复步骤:

1. 解决容器溢出问题

把固定高度改成最小高度,让容器能根据内容自动撑开,同时保留至少占满一屏的特性:

#projects {
  width: 100%;
  min-height: 100vh; /* 替换原来的height:100vh */
  background-color: #eee;
  /* 可选:如果内容过多,允许容器内滚动 */
  /* overflow-y: auto; */
}

2. 修复移动端图片块排版

调整.img-wrap的Flex方向为垂直排列,再给元素间加些间距优化观感:

.img-wrap {
  padding-top: 20px;
  display: flex;
  flex-direction: column; /* 设置垂直排列 */
  gap: 15px; /* 图片和文字之间的间距,可根据需求调整 */
  position: relative;
  overflow: hidden;
}

3. 可选优化:确保图片自适应宽度

你的.img-img已经设置了width:100%,这个可以保留,确保图片在移动端能撑满父容器宽度,不会出现错位:

.img-img {
  border-radius: 12px;
  max-width: 270px;
  width: 100%;
}

最终修改后的完整CSS

#projects {
  width: 100%;
  min-height: 100vh;
  background-color: #eee;
}
.img-wrap {
  padding-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 15px;
  position: relative;
  overflow: hidden;
}
.img-img {
  border-radius: 12px;
  max-width: 270px;
  width: 100%;
}

这样修改后,移动端每个图片块会整齐垂直排列,#projects容器会随内容自动调整高度,不会再溢出到contact区域,同时桌面端的3列布局也能正常保留。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 06:47:13