表中的多个<thead>/<tbody>是否有效?

Alb*_*elB 77 html javascript

想象一下与此类似的列表列表:

var list = [
  { name: 'group1', 
    items: [ 1, 2, 3, 4, 5 ]
  },
  { name: 'group2', 
    items: [ 1, 2, 3, 4, 5 ]
  },
  etc...
]
Run Code Online (Sandbox Code Playgroud)

现在忘记了整个"表数据没有设计"的说法,我想显示一个表list,并有一个单独的<thead>,并<tbody>在每个条目list.

这技术上有效吗?这可以在浏览器中使用,但我的蜘蛛感觉正在刺痛这个.

Jon*_*Jon 114

你可以有很多<tbody>元素,你想要的,但每次不超过一<thead><tfoot>.参考:

内容模型:

按此顺序:可选择一个标题元素,后跟零个或多个colgroup元素,后跟可选的元素,后跟零个或多个tbody元素或一个或多个tr元素,后跟可选的tfoot元素,可选择混合一个或更多脚本支持元素.


Zet*_*eta 11

最多允许一个thead和一个,因此您不应创建其他标头.毕竟在a中给你的专栏赋予了意义,比如"一天中的时间","温度","目前着火的猫的数量".tfoot ththead

如果列表中的条目是相关的,则它们应该都在同一个表中,您应该提供一个适合的标题来显示该关系.

如果条目实际上不相关,则应为每个条目提供一个表.您仍然可以在每个表上应用相同的CSS以获得良好的结果.

  • "如果列表中的条目是相关的,它们应该都在同一个表中,你应该提供一个适合的标题来显示这种关系" - 我认为在一个很长的表中重复相同的标题有时是可取的,所以用户不必滚动回顶部来记住列是什么.当然,还有其他解决方案(例如,JavaScript在表行元素上使用"粘性"表头或CSS,使其在视觉上与其他行不同). (4认同)

Jus*_*tin 5

我认为它就像id属性一样。它们应该是唯一的,但是您实际上可以在同一页面中重复使用它,但是仍然可以选择它。 就是说,仅仅因为可以做到并不意味着就应该做到。

我建议反对。

  • 拥有一个以上的&lt;tbody&gt;并没有什么错,但是根据规范,可以只有一个`&lt;thead&gt;`和一个`&lt;tfoot&gt;`。 (3认同)