<blockquote>必须嵌套<p>等块级元素以保障语义、可访问性与CSS控制;cite属性仅接受URL,不渲染文字;出处需用<footer>手动添加并置于标签内部。
直接说结论:用 <blockquote> 包住整段引用内容,里面必须嵌套 <p> 等块级元素;cite 属性只填 URL,不显示文字;想让“出处”可见,得手动加 <footer>。
<blockquote> 里要套 <p>?HTML5 规范明确要求 <blockquote> 的内容模型是“流式内容”,但实际渲染和可访问性依赖结构化子元素。直接写 <blockquote>这是第一段。这是第二段。</blockquote> 虽然能显示,但会导致:
正确写法是:
<blockquote cite="https://example.com/post"> <p>这是引用的第一段文字。</p> <p>这是第二段,逻辑上独立。</p></blockquote>
cite 属性填什么?填错会怎样?cite 是纯机器可读属性,只接受合法 URL(如 https://、/article/123),不是人名、书名或描述性文字。
立即学习“前端免费学习笔记(深入)”;
cite="张三《前端手记》" → 浏览器忽略,爬虫当无效值,无障碍工具报 warningcite="https://zhangsan.dev/note/2026-04-12" → 屏幕阅读器可 announce,SEO 工具能建立来源关联cite="post.html")在跨域或静态站点中容易 404,建议用绝对 URLcite 属性本身不渲染任何内容。想在页面上显示出处文字,必须用 HTML 元素手动补充,且位置有硬性限制:
<footer> 必须放在 <blockquote> 内部,不能在外面包一层 div<cite> 元素用于标记作品名或人名,浏览器默认斜体,但只是样式提示,不带语义权重<small> 或 <div> 替代 <footer> —— 后者是 HTML5 明确允许的、语义正确的出处容器推荐结构:
<blockquote cite="https://example.com/source"> <p>引用正文……</p> <footer>出自 <cite>《前端手记》</cite>,作者 <span>张三</span></footer></blockquote>
<blockquote> 却没缩进、没引号、看起来和普通段落一样?三个常见原因:
margin,需手动补:blockquote { margin: 1em 40px; }
border-left 但没设 padding-left,导致文字紧贴边框,视觉上“没缩进”<q> 支持 quotes 属性,<blockquote> 的引号必须靠 ::before/::after + CSS 手动实现,且各浏览器默认不加真正麻烦的是:很多人为了“看起来像引用”,干脆放弃语义,全用 <div class="quote">。这不是省事,是主动放弃可访问性和长期维护基础。