我试图将一个div放在一个表中,但是它不会跨越多行。
以下是我正在使用的代码:
<table>
<tr>
<td><div id="test"></td>
</tr>
<tr>
<td>row 2 stuff</td></td>
</div>
</table>
我有多个按钮点击动态添加的行。我希望每组动态添加的行都在div中,以便于删除。
问题是FireFox会自动关闭同一个单元格中的div标签。在最后,它正在将我的结束移动到第一个单元格的末尾。
答案 0 :(得分:2)
应首先关闭最新打开的标签,以获得完美的结果。 你的代码应该看起来像这样:
<table>
<tr>
<td><div id="test"></div></td>
</tr>
<tr>
<td>row 2 stuff</td>
</tr>
</table>
答案 1 :(得分:1)
您不能将<div>
标记包装在表格元素周围。如果您希望对每一行保持简单引用,请考虑保留对所有新添加的行的引用,或者为它们添加一个类以供以后访问。
答案 2 :(得分:1)
你的标记不符合html标准,因为你是非常嵌套的。如果要添加行,请使用以下格式
<table>
<div id="test">
<tr>
<td></td>
</tr>
<tr>
<td>row 2 stuff</td></td>
</tr>
</div>
</table>
如果您注意到,我将两行分组在一个div中。即使这是不明智的,因为你在一个表格中嵌入一个div。一个更方便的解决方案是将类分配给想要组合在一起的div,如下所示:
<table>
<tr class="test">
<td></td>
</tr>
<tr class="test">
<td>row 2 stuff</td></td>
</tr>
</table>
这里我想要组合在一起的行被分配了一个公共类。所以如果我用Jquery选择它们,我会这样做:
$("tr.test")
希望有所帮助!
答案 3 :(得分:0)
Html标记必须严格在另一个标记内。因此不允许使用以下标记:
<b>this <i>is a</b> test</i>
你的标记违反了同样的规则。