用HTML代码制作一个美观的博客文章列表

雨浩同学_1604

雨浩同学_1604

2026-08-05

906人浏览

原创

应使用 article 和 section 构建语义化结构,配合 CSS Grid 实现响应式布局,利用 :is() 简化样式复用,并在列表页仅渲染摘要以提升加载性能。

用html代码制作一个美观的博客文章列表

用 article 和 section 搭建语义化结构

浏览器和读屏工具依赖 HTML 语义标签理解内容层级。别用一堆 div 堆砌列表,直接用 article 包每篇文章,外层用 section 或 main 标明主体区域。这样既利于 SEO,也方便后续用 CSS 选择器精准控制样式。

常见错误是把标题、摘要、元信息全塞进一个 div,结果样式一改就全乱。正确结构示例:

<main><article><header><h2><a href="/post/1">如何调试 React Suspense</a></h2>
      <p class="meta"><time datetime="2024-05-12">5月12日</time> • 8 分钟阅读</p>
    </header><p class="excerpt">Suspense 触发时没有 fallback?useTransition 不生效?本文直击三个典型断点…</p>
    <footer><a href="/post/1">阅读全文 →</a></footer></article><!-- 更多 article --></main>

用 grid 实现响应式三栏到单栏切换

纯靠 float 或 inline-block 排版博客列表,移动端适配会反复踩坑。CSS Grid 能用几行代码搞定断点切换:桌面端三列等宽,平板两列,手机强制单列。

关键点不是“怎么写 Grid”,而是避免漏掉 gap 和 minmax 的组合:

  • grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) —— 确保最小宽度不压缩文字,又能在窄屏自动回退为 1 列
  • 必须设 gap: 1.5rem,否则文章卡片紧贴,视觉拥挤
  • 别给 article 设固定高度,摘要长度不一,强制高度会截断文字或留白失控

补充一句:如果要兼容 IE,就别碰 Grid,老实用 flex + @media,但得手动处理换行逻辑。

用 :is() 简化标题和元信息的样式复用

每篇博客的标题链接、时间、分类、阅读时长往往需要统一字体大小、颜色和间距。手写三遍 article h2 a、article .meta time、article .meta span 太冗余,且后期改色要改多处。

HTML Text Extract
HTML Text Extract

从HTML页面(URL、文件或标准输入)中提取主体内容文本,去除导航、页脚、广告和模板文本。可直接传递给readability_check或其他文本工具。

下载

现代 CSS 的 :is() 是解法:

article :is(h2 a, .meta time, .meta span) {
  color: #4a5568;
  font-size: 0.95rem;
}

注意两点:

  • :is() 不支持伪元素(比如不能写 :is(a:hover)),hover 得单独写
  • 某些旧版 Safari 对 :is() 解析有 bug,若需强兼容,退回到类名统一样式(如加 text-muted)

加载性能陷阱:别在列表页预渲染全文

看到别人博客列表里每篇文章都带完整 Markdown 渲染结果,就跟着把

、
    、 全塞进去——这是最常被忽略的性能雷区。

    列表页只需展示摘要,且必须满足:

    • 摘要截断严格按字符数或段落数,而非简单 substring(0, 200),否则可能切在 HTML 标签中间,导致后续 DOM 错位
    • 禁用所有内联样式和脚本(比如摘要里带 <script></script> 或 onclick),防止 XSS 和执行开销
    • 图片一律用占位符或懒加载 loading="lazy",否则首屏加载几十张缩略图会卡死滚动

    真正复杂的格式(表格、代码块、数学公式)只应在详情页解析。列表页越轻,用户划动越顺,服务器吐数据越快。

    前端入门到VUE实战笔记:立即使用
    在学习笔记中,你将探索 前端 的入门与实战技巧!

    相关文章

    HTML速学教程(入门课程)
    HTML速学教程(入门课程)

    HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

    下载

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

    相关专题

    更多
    html版权符号
    html版权符号

    html版权符号是“©”,可以在html源文件中直接输入或者从word中复制粘贴过来,php中文网还为大家带来html的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

    2023.06.14

    7015

    7

    html在线编辑器
    html在线编辑器

    html在线编辑器是用于在线编辑的工具,编辑的内容是基于HTML的文档。它经常被应用于留言板留言、论坛发贴、Blog编写日志或等需要用户输入普通HTML的地方,是Web应用的常用模块之一。php中文网为大家带来了html在线编辑器的相关教程、以及相关文章等内容,供大家免费下载使用。

    2023.06.21

    3872

    4

    html网页制作
    html网页制作

    html网页制作是指使用超文本标记语言来设计和创建网页的过程,html是一种标记语言,它使用标记来描述文档结构和语义,并定义了网页中的各种元素和内容的呈现方式。本专题为大家提供html网页制作的相关的文章、下载、课程内容,供大家免费下载体验。

    2023.07.31

    3550

    5

    html空格
    html空格

    html空格是一种用于在网页中添加间隔和对齐文本的特殊字符,被用于在网页中插入额外的空间,以改变元素之间的排列和对齐方式。本专题为大家提供html空格的相关的文章、下载、课程内容,供大家免费下载体验。

    2023.08.01

    3559

    5

    html是什么
    html是什么

    HTML是一种标准标记语言,用于创建和呈现网页的结构和内容,是互联网发展的基石,为网页开发提供了丰富的功能和灵活性。本专题为大家提供html相关的各种文章、以及下载和课程。

    2023.08.11

    5119

    6

    html字体大小怎么设置
    html字体大小怎么设置

    在网页设计中,字体大小的选择是至关重要的。合理的字体大小不仅可以提升网页的可读性,还能够影响用户对网页整体布局的感知。php中文网将介绍一些常用的方法和技巧,帮助您在HTML中设置合适的字体大小。

    2023.08.11

    3501

    3

    html转txt
    html转txt

    html转txt的方法有使用文本编辑器、使用在线转换工具和使用Python编程。本专题为大家提供html转txt相关的文章、下载、课程内容,供大家免费下载体验。

    2023.08.31

    3309

    3

    html文本框代码怎么写
    html文本框代码怎么写

    html文本框代码:1、单行文本框【<input type="text" style="height:..;width:..;" />】;2、多行文本框【textarea style=";height:;"></textare】。

    2023.09.01

    2868

    6

    HTML嵌入CSS样式的方法
    HTML嵌入CSS样式的方法

    HTML嵌入CSS样式的方法有内联样式、内部样式表和外部样式表。本专题为大家提供CSS样式相关的文章、下载、课程内容,供大家免费下载体验。

    2023.09.20

    3028

    5

    热门下载

    更多
    网站特效
    /
    网站源码
    /
    网站素材
    /
    前端模板

    精品课程

    更多
    相关推荐
    /
    热门推荐
    /
    最新课程
    HTML教程
    HTML教程

    共500课时 | 10.8万人学习

    HTML 基础教程
    HTML 基础教程

    共45课时 | 20.6万人学习

    GDB 17.2 官方文档集合
    GDB 17.2 官方文档集合

    共0课时 | 0人学习