我可以将列表标签元素放在“h1”标题标签之间,还是有某种规则说这是无效的?
我从来没见过有人把“ol”和“li”放在<h1></h1>
之间标签,但我不确定原因。是因为它对 SEO 不利吗?
最佳答案
所有 HTML 规范禁止 ul
里面h1
,例如参见HTML 4.01 on h1
(其中内容模型符号 %inline;
表示文本和文本级标记;例如,这不包括列表元素)。
但是,您可以使用ul
里面h1
从某种意义上说,浏览器会解析它并构建一个文档树,其中 ul
是 h1
的 child .你可以通过测试如果你会发生什么来直观地看到这一点。在标题元素上设置背景颜色:
<style>
h1 { background: yellow }
</style>
<h1>Hello<ul><li>item</ul>world</h1>
所以 h1
元素包含列表并在它之后继续。这与尝试嵌套时发生的情况不同,比如说 ul
。里面p
. (<ul>
标记隐式关闭了 p
元素。)
您是否应该这样做是另一回事。很难想象标题有意义地包含项目符号列表的情况。 HTML 中的标题元素是标题文本,与标题(可能包含标题)相反。还有一个 ul
在 h1
里面例如,可能会使语音浏览器感到困惑,因为它们可能不准备处理此类结构。
关于 SEO,我们真的不知道搜索引擎在内部是如何工作的,也不知道它们将如何处理这种奇怪的结构。你总是可以用一些引擎来测试它。当然他们明天可能会改变这一点,特别是如果他们注意到人们试图用一些奇怪的(和无效的)HTML 来愚弄他们。此外,通过使用 h1
提高您在 SEO 中的地位的明显流行的想法对于重要的内容是基于误解。搜索引擎关注到什么程度h1
标记,他们很可能认为它在页面内 具有相对重要性。所以你会说页面上的其他所有内容都没有这个元素的内容重要。
关于html - 将 <ol><li> 标签放在 <h1></h1> 标签之间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26091612/