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

如何移除横向排列的两张图片间的过大空白并实现居中对齐

问题原因

你当前使用的是Flex布局,.campus-col设置了flex-basis: 32%,两个子元素总宽度仅占父容器的64%,剩余空间被Flex默认的对齐规则分配,才会出现过大空白。你之前尝试的inline-block、font-size: 0是用于解决inline/inline-block元素的默认字符间隙问题,对Flex子项不生效,所以没有效果。

解决代码

你只需要给父容器.row添加Flex布局控制属性,同时调整.campus-col的宽度配置即可,修改后的完整CSS如下:

*{
padding: 0;
margin: 0;
box-sizing: border-box;
}
/* 新增父容器布局配置 */
.row {
  display: flex;
  justify-content: center; /* 实现两张图片水平居中 */
  gap: 16px; /* 自定义两个图片之间的间距,数值可随意调整 */
}
.campus-col{
    flex-basis: 42%; /* 从32%调整为合适的宽度,两个子项加起来加上gap的宽度不要超过100%即可 */
    max-width: 450px; /* 可选:添加最大宽度避免大屏下图片拉伸过度 */
    border-radius: 10px;
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
}
.campus-col img{
    width: 100%;
    display: block; 
}
.layer{
    background: transparent;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: 0.5s;
}
.layer:hover{
    background: rgba(226,0,0,0.7);
}
.layer h3{
    width: 100%;
    font-weight: 500;
    color: #fff;
    font-size: 26px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    opacity: 0;
    transition: 0.5s;
}
.layer:hover h3{
    bottom: 49%;
    opacity: 1;
}

说明

上述修改不会影响原有hover触发展示层的效果,所有交互逻辑保持不变。如果需要适配移动端,可给.row添加flex-wrap: wrap属性,屏幕宽度不足时两张图片会自动换行排列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 22:15:02