实现横向滚动(Horizontal Scroll)的网格布局


Html

<div class="hmw-scrollrow">
  <a class="hmw-card" href="https://houmengwei.com/collection/ming-dynasty-xuande-reign/">
    <img src="https://i0.wp.com/houmengwei.com/wp-content/uploads/2023/03/dsc01194-scaled.jpeg?fit=2560%2C2560&ssl=1" alt="ming-dynasty-xuande-reign">
    <div class="hmw-cap">明宣德 青花牵牛花卉紋折方瓶</div>
  </a>
  <a class="hmw-card" href="https://houmengwei.com/collection/c-e-1465-1487-chenghua-style-doucai-stem-cups/">
    <img src="https://i0.wp.com/houmengwei.com/wp-content/uploads/2023/04/4a75898a1d8ef0010f076a26002c5e81.jpeg?fit=1824%2C1824&ssl=1" alt="doucaigaozubei">
    <div class="hmw-cap">明成化 斗彩团莲纹高足杯</div>
  </a>
  <a class="hmw-card" href="https://houmengwei.com/collection/c-618-907-mirror-with-lacquered-back-inlaid-with-four-phoenixes-holding-ribbons-in-their-mouths/">
    <img src="https://i0.wp.com/houmengwei.com/wp-content/uploads/2025/06/DSC08922-scaled.jpg?fit=2560%2C1710&ssl=1" alt="Mirror with Lacquered Back Inlaid with Four Phoenixes Holding Ribbons in Their Mouths">
    <div class="hmw-cap">唐 四鸾衔绶纹金银平脱镜</div>
  </a>
  <a class="hmw-card" href="https://houmengwei.com/collection/c-1736-1796-carved-rock-crystal-chilong-vase-and-cover/">
    <img src="https://i0.wp.com/houmengwei.com/wp-content/uploads/2022/11/6C9359AA-6EAB-49AC-A177-DF947090F311.jpeg?fit=1280%2C855&ssl=1" alt="shuijingchiwenping">
    <div class="hmw-cap">清 乾隆 水晶五螭纹瓶</div>
  </a>
</div>

CSS

/* =====================
   horizontal scroll row
   .hmw-card
===================== */
.hmw-scrollrow{
  display:flex;
  gap:28px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:10px 6px 18px;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;

  scrollbar-color:rgba(0,0,0,.55) rgba(0,0,0,.12);
  scrollbar-width:thin;
}
.hmw-scrollrow::-webkit-scrollbar{height:6px;}
.hmw-scrollrow::-webkit-scrollbar-track{background:rgba(0,0,0,.12);border-radius:999px;}
.hmw-scrollrow::-webkit-scrollbar-thumb{background:rgba(0,0,0,.55);border-radius:999px;}

/* 只作用在横向滑动里的卡片 */
.hmw-scrollrow > .hmw-card{
  flex:0 0 420px;
  scroll-snap-align:start;
  text-decoration:none;
  color:inherit;
}
.hmw-scrollrow > .hmw-card img{
  width:100%;
  aspect-ratio:3/4;
  object-fit:cover;
  display:block;
  box-shadow:0 10px 30px rgba(0,0,0,.10);
  border-radius:2px;
}
.hmw-cap{
  margin-top:14px;
  font-size:14px;
  letter-spacing:.06em;
  text-transform:uppercase;
  line-height:1.5;
}

/* 确保图片不会超出卡片容器的宽度,并按比例缩放高度 */
.hmw-card img {
  max-width: 100%;
  height: auto;
  display: block; /* 消除图片底部默认的缝隙 */
}