根据:https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Sections_and_Outlines_of_an_HTML5_document
HTML5文档的部分和大纲
经验法则的例外,标题排名应该匹配 section nesting level用于可以多次重用的节 文档。例如,一个部分可能存储在一个 内容管理系统并在运行时组装成文档。在 在这种情况下,一个好的做法是从顶部标题的h1开始 可重用部分的级别。可重用的嵌套级别 部分将由文档的部分层次结构确定 它出现了。明确的部分标签仍然有用 情况下。
我们如何使用HTML4尊重可重用组件的文档大纲?
例如。可重用组件是使用h1创建的,但在嵌入某个模板时应具有上下文h3
除了使用Javascript进行向后兼容之外,还有其他方法吗?
答案 0 :(得分:0)
您可以随时使用客户端javascript将存储的<h1>
更改为与您的实际嵌套级别匹配的那个,因为网络抓取工具应该已经处理好多个<h1>
,所以理论上你很好去。
实际上,一些网络抓取工具仍然无法理解文档大纲,因此对于常识性的SEO原因,最好使用相应的标题级别立即存储组件,从而允许旧的抓取工具和旧的浏览器立即渲染。
从文档大纲开始,您仍然可以继续使用,因为在每个分区元素中,任何级别的第一个标题元素都将是该部分的标题,因为每个相同或更高级别的标题将打开一个新的隐含分区。
唯一的问题是,如果您想要使用旧嵌套级别之外的任何可重用部分,导致错误的html大纲,就旧浏览器和旧爬虫而言。
这显然无法通过客户端javascript解决,因为爬虫通常不执行它,而是应该在组装组件时在服务器端完成,从而改变可重用组件的标题级别(可能通过将初始级别作为参数传递给汇编程序,以匹配它的祖先sublevel。