以下HTML无效,有效的替代方法是将表单标记放在表标记之外。我的问题是为什么决定将其视为非法。
<table>
<tbody>
<form>
<tr>
<td></td>
<td></td>
</tr>
</form>
</tbody>
</table>
答案 0 :(得分:4)
tbody标签用于表格单元格的分组。它不应包含任何内容,因此不应包含表单。
http://www.w3schools.com/tags/tag_tbody.asp
The <tbody> tag is used to group the body content in an HTML table.
The <tbody> element must have one or more <tr> tags inside.
您可以将表格放在表格的整个内容周围或单个表格单元格内。
根据您的操作,您可能需要考虑将<div>
与css样式而不是表格一起使用。表用于表示数据(不是表单输入)。而div更多的是用于切片和设计。
答案 1 :(得分:0)
注意:这个答案纯属猜测。
允许非表格元素不必要地使渲染复杂化
在创建HTML期间的某个时刻,显然认为有必要提供表格数据。现在我们希望这是一个简单和标准化的方法,以防止过于复杂的渲染算法,从而导致各种错误。尝试从开发人员的角度考虑表的呈现。在正常条件下编写在任何给定限制内呈现数据的代码有多难。现在补充一点,任何其他类型的元素与这些表元素混合的可能性。这使得我们必须计算渲染的方式变得非常复杂。