【问题标题】:H1, H2, H3, H4, H5, H6 inside table TH tags? - HTML表 TH 标签内的 H1、H2、H3、H4、H5、H6? - HTML
【发布时间】:2019-11-21 01:24:48
【问题描述】:

我可以在table TH 标签中使用H1, H2, H3, H4, H5, H6 吗? - HTML

我尝试使用 w3 验证器进行验证,但没有通过验证。我明白了:

The element h4 must not appear as a descendant of the th element.
<th><h4>Orange</h4></th>

我使用 HTML5,所以我认为最好的办法是使用&lt;div&gt; 制作表格,然后将&lt;H4&gt; 标签放入其中。或者这也是一个坏主意?因为它看起来像这样:

<h4>first title</h4> <h4>second title</h4> <h4>third title</h4> 
<p>first parahraph</p> <p>second parahraph</p> <p>third parahraph</p>

我不知道这看起来如何,3 个标题标签关闭,中间没有任何文本或段落。

【问题讨论】:

  • @tastro - 如果您的数据可以适当地以表格形式表示,为什么不能只使用th 元素并根据需要设置样式。为什么要麻烦标题元素?
  • 可以将标题标签放在&lt;td&gt; 中,并且您可以在允许&lt;th&gt; 的相同位置使用&lt;td&gt;。因此,如果您将其更改为 &lt;td&gt;&lt;h4&gt;Orange&lt;/h4&gt;&lt;/td&gt;,您的示例将有效。将表格数据放在表格中并适当地设置 &lt;th&gt; 元素的样式可能仍然是一个更好的主意,但这对于将来搜索此内容的任何人来说可能是有用的解决方法。
  • 当时,当我发布这个问题时,我正在使用表格进行设计。这不是应该使用表格的方式。我现在知道了。 :)

标签: html html-table html-heading


【解决方案1】:

HTML living standard 明确禁止这样做th element 内容模型如下(重点添加):

流式内容,但有没有页眉、页脚、分段内容或标题内容后代。

Heading content”指h1h2等元素,以及hgroup元素:

标题内容定义了一个部分的标题(无论是否明确 使用分段内容元素进行标记,或由标题暗示 内容本身)。

h1 h2 h3 h4 h5 h6 hgroup

【讨论】:

  • 我在 w3 验证器上得到了同样的结果。所以我认为这是正确的。谢谢。
【解决方案2】:

就有效的 HTML 而言?是的。

就它是一个好主意而言?是的 - 这些是标题区域,因此非常适合 H 标记。

有一种观点认为,您不应该仅仅使用一个标签来包围另一个标签,因此您可能认为标题文本应该直接放在th 中。但是从 SEO 的角度来看,H 标签更重要,所以你经常会看到这样的事情:

<th><h3>Some heading</h3></th>

【讨论】:

    【解决方案3】:

    是的,但是 TH 表示表头,我认为表头中的表头不利于语义。也许它对 SEO 有好处。

    【讨论】:

      【解决方案4】:

      是的。您可以在表 TH 标签内使用H1 , H2,.. H6 标签。这些也将在表 TH 标记中执行相同的功能。表格内容的文本大小可以根据您的需要进行更改。

      请参阅此link 以供参考。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-07-09
        • 1970-01-01
        • 1970-01-01
        • 2011-01-13
        • 1970-01-01
        • 1970-01-01
        • 2021-05-28
        相关资源
        最近更新 更多