You need to enable JavaScript to run this app. 如何使用CSS实现首篇博客全宽展示其余博客双列网格布局
优惠活动
大模型
产品
解决方案
定价
更多

如何使用CSS实现首篇博客全宽展示其余博客双列网格布局

实现方案

你可以直接用CSS Grid实现该需求,不需要额外嵌套容器、不需要修改HTML结构,所有博客卡片放在同一个父级容器下即可适配。

示例HTML结构

<!-- 博客列表父容器 -->
<div class="blog-list">
  <!-- 首篇最新博客 -->
  <article class="blog-card">最新博客内容</article>
  <!-- 其余博客 -->
  <article class="blog-card">博客2内容</article>
  <article class="blog-card">博客3内容</article>
  <article class="blog-card">博客4内容</article>
  <article class="blog-card">博客5内容</article>
  <!-- 更多博客项 -->
</div>

对应的CSS代码

.blog-list {
  display: grid;
  /* 定义网格为等宽两列 */
  grid-template-columns: repeat(2, 1fr);
  /* 调整网格间隙,可按需修改数值 */
  gap: 24px;
  width: 100%;
  max-width: 1200px; /* 父容器最大宽度可按需调整 */
  margin: 0 auto;
}

/* 选中第一个博客卡片,设置跨所有列全宽展示 */
.blog-card:first-child {
  grid-column: 1 / -1; 
}

/* 响应式适配:屏幕宽度小于768px时全部改成单列布局 */
@media (max-width: 768px) {
  .blog-list {
    grid-template-columns: 1fr;
  }
}

原理解释

  • 父容器开启网格布局后直接定义2等分列,所有子元素默认会按顺序填充到网格中
  • 用:first-child伪类选中首篇博客,通过grid-column: 1 / -1声明该元素横跨所有列,后续哪怕你调整父容器的列数,首项都会自动撑满全宽
  • 该方案完全适配动态生成的博客列表,不需要额外做逻辑判断

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 13:15:03