最推荐使用CSS Grid布局实现多行多列图片排布,其具有简洁、灵活和响应式优势。首先通过display: grid定义网格容器,利用grid-template-columns: repeat(3, 1fr)创建等宽三列布局,结合gap设置间距,img设置width: 100%实现自适应;为提升响应性,可改用repeat(auto-fit, minmax(150px, 1fr)),使列数随屏幕宽度自动调整,最小每列150px,auto-fit拉伸项目填满空间;若需兼容旧浏览器,可用Flexbox方案,通过flex-wrap: wrap和calc(33.333% - 10px)模拟三列,但需手动处理间隙;综上,Grid在代码简洁性和功能强大性上均优于Flexbox,是首选方案。
实现多行多列图片排布,最推荐的方式是使用 CSS 的 Grid 布局,它简单、灵活且响应式友好。下面介绍几种常用方法。 使用 CSS Grid 实现等宽多列布局 这是最直观的方法,适合固定列数或根据容器自动调整。 示例:创建一个每行 3 列、图片自动换行的网格:.image-grid {
display: grid;
grid-template-columns: repeat(3, 1fr); /* 3 列,等宽 */
gap: 10px; /* 图片之间的间距 */
}
.image-grid img {
width: 100%;
height: auto;
object-fit: cover;
}
.image-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
gap: 10px;
}
.image-grid img {
width: 100%;
height: auto;
}
.image-flex {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.image-flex img {
flex: 1 1 calc(33.333% - 10px); / 每行最多 3 张 /
max-width: calc(33.333% - 10px);
height: auto;
}
