使用Flexbox可高效创建响应式图片画廊。首先构建包含多张图片的容器,应用display: flex、flex-wrap: wrap和gap设置间距;通过calc()计算每张图片宽度,结合object-fit: cover确保尺寸统一且不变形,并添加border-radius和hover缩放提升视觉效果;最后利用媒体查询在不同屏幕下调整图片列数,实现良好适配。关键在于gap与calc的协同控制布局平衡。
在 CSS 中制作一个简单的图片画廊布局,关键在于使用合适的布局方式让图片整齐排列,并保持响应式效果。下面介绍一种常见且实用的方法,使用 Flexbox 实现简洁美观的图片画廊。
@@##@@
@@##@@
@@##@@
@@##@@
.gallery {
display: flex;
flex-wrap: wrap;
gap: 10px; /* 图片之间的间距 */
padding: 10px;
}
.gallery img {
width: calc(25% - 10px); /* 每行显示4张图,减去间距影响 */
height: 200px;
object-fit: cover;
border-radius: 8px;
transition: transform 0.2s;
}
.gallery img:hover {
transform: scale(1.05); /* 鼠标悬停时轻微放大 */
}
@media (max-width: 768px) {
.gallery img {
width: calc(33.333% - 10px); /* 每行3张 */
}
}
@media (max-width: 480px) {
.gallery img {
width: calc(50% - 10px); /* 每行2张 */
}
}
基本上就这些。用 Flexbox 制作图片画廊简单高效,兼容性好,适合大多数网页场景。不复杂但容易忽略的是 gap 和 calc 的配合使用,能有效控制间距与布局平衡。