哪些元素“有效”放置在标记内?

时间:2012-08-23 16:04:41

标签: html semantic-markup

我知道将div放在td内并不是一个好主意,但是span和其他元素呢?哪些元素可以放在td内,哪些不是,为什么?

编辑:问题是我有一个旧的table布局,我需要在那里进行修改。为此,我需要在td中添加元素,那么插入<td>的元素最少是什么?

2 个答案:

答案 0 :(得分:20)

HTML spec指定哪些元素可能是其他元素的直接后代。

<td> element有一个flow content内容模型,这意味着它可以包含:

  

abbr地址区域(如果它是地图元素的后代)文章旁边音频b bdi bdo blockquote br按钮canvas cite code命令datalist del details dfn dialog div dl em embed fieldset figure footer form h1 h2 h3 h4 h5 h6 header hgroup hr i iframe img input ins kbd keygen label map mark math menu meter nav noscript object ol output p pre progress q ruby​​ s samp script section select small span strong style(如果scoped属性存在的话)sub sup svg table textarea time u ul var video wbr text

答案 1 :(得分:4)

不应div置于table内的想法更多的是使用CSS语义标记来设置布局样式。

话虽如此,<table>及其相关元素应该用于以表格格式显示数据。如果表格中的一个单元格包含更复杂的标记是有意义的,那么就这样吧。

过去使用<table>是因为它很容易为网站提供网格布局,但现在应该使用CSS来完成,以便您的网站更易于访问。