仅用于标记有明确外部来源的引用内容,必须搭配合法url的cite属性,否则语义失效;xhtml中需包裹块级元素。

<blockquote></blockquote> 不是用来“让文字缩进好看”的,它是语义标签,只在内容**明确来自外部来源**时才该用。错用它不会报错,但会破坏结构化语义,影响 SEO、屏幕阅读器识别和未来数据提取。
什么时候必须用 <blockquote></blockquote> 而不是 <p></p> 或 <div>
<p>只有一种情况:你正在标记一段**可追溯来源的引用内容**,且你愿意公开声明“这不是我原创的”。</p>
<ul>
<li>✅ 正确:引用论文中的一段话,<code>cite 指向 DOI 链接
cite 指向 GitHub 文件 URLmargin + <p></p> 或 <div>
<li>❌ 错误:引用自己上周写的博客——<code><blockquote></blockquote> 要求“另一源”,不包括同一域名下的自有内容(除非是明确转载)
cite 属性不是可选的“加分项”,而是语义必需项
HTML5 规范没强制要求浏览器校验 cite 值是否有效,但它在语义链里是关键一环:没有 cite,<blockquote></blockquote> 就退化成无来源的装饰性块,辅助技术可能忽略其引用含义。
-
cite必须是合法 URL(如https://example.com/doc#section2),不能是相对路径或空字符串 - 不要写
cite="来源:XXX"这类文本——那是人看的,机器不认 - 如果真找不到可公开访问的原始链接,宁可不用
<blockquote></blockquote>,改用<p></p>+<cite></cite>组合说明来源
XHTML 验证失败?检查内部是否包裹了块级元素
在 XHTML 模式下(比如用 application/xhtml+xml MIME type),<blockquote></blockquote> **不允许直接放纯文本或内联元素**,否则解析失败。
- ❌ 错误写法:
<blockquote>这里是一段引用</blockquote> - ✅ 正确写法:
<blockquote><p>这里是一段引用</p></blockquote> - ✅ 也允许:
<blockquote><pre class="brush:php;toolbar:false;">代码块引用</pre></blockquote> - 现代 HTML5 页面一般不受限,但若你用 XML 解析器或某些 CMS 的严格模板引擎,这点容易被忽略
最常被忽略的点:很多人以为加了 <blockquote></blockquote> 就自动“完成引用标注”了,其实真正起作用的是 cite 属性 + 内容与源之间的可验证关联。没这个关联,它就只是个带缩进的 <div>。</div>











