一个表中有多个表单,这些表单的行长不同,但这似乎不起作用:
<table>
<form>
<tr>
<td>
</td>
<td>
</td>
</tr>
</form>
<form>
<tr>
<td>
</td>
<td>
</td>
</tr>
</form>
</table>
我相信一张桌子有一个明确的结构,这不能与其他结构交织,但是有一个整洁的工作吗?
感谢。
答案 0 :(得分:5)
没有。根据这份文件:http://www.w3.org/TR/html401/struct/tables.html#h-11.2.1 表格可能只包含以下内容:
TABLE --
(CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)>
但你可以使用这样的东西
<div class=table>
<form>
<div class=cell>...</div>
<div class=cell>...</div>
</form>
</div>
有样式:
div.table { display:table; }
div.table > form { display:table-row; }
div.table > form > div.cell { display:table-cell; }
答案 1 :(得分:2)
不,你不能这样做。我想你想用两种形式在表格中对齐,对吧?
如果您允许在页面上使用javascript,则可以在<td>
元素中添加不同的文本框等,并将onchange
事件处理程序附加到这些框以填充相应的(隐藏)字段以你的实际形式。
答案 2 :(得分:1)
这将是所有HTML中的问题......包括XHTML和HTML5。
<!ELEMENT table (caption?, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+))>
答案 3 :(得分:0)
不在<tr>
个标签之间。它们应该在<table>
之外或<td>
之内工作。
答案 4 :(得分:0)
如果您希望将它们放在多个行中,则无需在单个表中使用两个表单。表越大,浏览器加载和显示它所需的时间就越长。相反,为每个表单提供自己的表,并将表标记放在表单标记中,如下所示:
<form method="GET" action="foo.sh">
<table>
</table>
</form>
答案 5 :(得分:0)
是的! HTML5没问题。 现在,表格标签只是表格样式规则的简写。