【问题标题】:Are <Ul>s allowed inside H1?是否允许在 H1 中使用 <Ul>?
【发布时间】:2011-02-16 09:39:22
【问题描述】:

我想知道如果我在 H1 标题中添加一个列表会不会有任何问题:

<h1>
 <ul>
  <li><a href="...">some link</a></li>
  <li><a href="...">another link</a></li>
  <li>current page</li>
 </ul>
</h1>

列表是“面包屑”类型的导航。

或者将其插入列表中更好?

<ul>
 <li><a href="...">some link</a></li>
 <li><a href="...">another link</a></li>
 <li><h1>current page</h1></li>
</ul>

【问题讨论】:

  • 你到底想在这里表达什么,语义上?如果您的页面没有标题,我不会给它一个标题。如果是这样,我会与面包屑导航分开。
  • 它没有,但列表项之一可能是标题。我在某处读到每个页面都需要 H1,否则对 SEO 不利。这是真的吗?
  • 我不会说 SEO 不好。但是当您使用 H1 来识别页面上最重要的主题时,页面“质量”肯定会提高。

标签: html css seo


【解决方案1】:

&lt;h1&gt; 这样的标题元素遵循phrasing content 内容模型:如果您想完全遵循 HTML 规范,措辞内容只能包含常规文本或其他措辞内容。由于&lt;ul&gt; 元素不是短语内容,因此在技术上不允许在&lt;h1&gt; 元素中使用它们。

您的第二个示例(将&lt;h1&gt; 元素放在&lt;li&gt; 元素中)是有效的标记,并且是组合&lt;h1&gt;&lt;ul&gt; 元素的首选方法。

【讨论】:

    【解决方案2】:

    在 h1 中包含 ul 是无效的,最好的检查方法是使用 http://validator.w3.org/ 检查您的结构,这样会考虑您使用的 doctype。 (但它仍然无效!)

    【讨论】:

    • +1 答案是正确的:这是无效的。第二种方法会更好。
    【解决方案3】:

    您可以使用W3C Markup Validation Service来检查它是否有效:)

    【讨论】:

    • @Alexandra:我想这将是一个不同的问题,以便您可以获得更有针对性的答案:)
    • 这会影响搜索引擎的定位,因为标题最终可能与内容无关。
    【解决方案4】:

    要回答您最初的问题,不,这看起来与您的标记无关,即使它在技术上是有效的(我不相信它是)我不建议这样做.

    对于 SEO,h1 在某种程度上用于搜索,但我认为它不如 &lt;title&gt; 元素重要。但是,如果您的页面没有标题,从语义上讲,我当然不会仅仅为了提高排名而撬开一个标题。将那个“当前页面”文本放在&lt;title&gt; 中,如果合适的话,使面包屑列表成为一个普通的面包屑列表,如果你不需要它就不要理会h1。

    【讨论】:

      【解决方案5】:

      这将显示 - 但是我认为这将被视为不好的做法,因为列表不是标题。 您最好添加 css 样式,以便您可以将列表格式化为所需的大小、字体等。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-08-28
        • 1970-01-01
        • 1970-01-01
        • 2021-05-11
        • 2011-12-17
        • 2010-12-16
        • 1970-01-01
        • 2019-03-29
        相关资源
        最近更新 更多