我想在表格中有三个单元格,当你点击它们时选择相应的复选框,所以我用标签标签包装它们。
<table>
<tr>
<td>
<input id="input_id" type="checkbox">
</td>
<label for='input_id'>
<td>stuff</td>
<td>stuff</td>
<td>stuff</td>
</label>
</tr>
</table>
不幸的是,这打破了点击功能。通常,当您单击标签中的文本时,它会切换检查,但这不适用于包装元素。有什么想法吗?它应该是,还是有某种原因这是一个坏主意?
有趣的是,如果我使用相同的'for'属性在单元格内容周围使用三个单独的标签,它确实有效....
答案 0 :(得分:0)
根据您的示例编写无效标记是一个坏主意。应该包裹td
的唯一元素是tr
。
就目前而言,您的示例不会破坏点击功能,因为解析器会丢弃td标记。
但是,如果示例位于table和tr元素中,则输入和标签元素将移动到表之前,因此不会包装td
s或“stuff”文本(保留在表格内),因此单击该文本将无效。