在 HTML5 中将表格行包装在元素(超链接)中
我试图将表格行包装在“a”元素(超链接)中,以使整行可单击。我正在使用 HTML5 文档类型,它应该允许这种事情,事实上我在链接中包装其他块级元素没有问题。事实上,将 a 元素包裹在整个表格周围似乎是可行的。
标记如下:
<table>
<tbody>
<a href="#">
<tr>
<td>25 Nov 2010</td>
<td>Active</td>
</tr>
</a>
</tbody>
</table>
I'm trying to wrap a table row in an "a" element (hyperlink) in order to make the whole row clickable. I'm using the HTML5 doctype, which should allow for this sort of thing and in fact I've had no problem wrapping other block-level elements in links. In fact, wrapping an a element around a whole table seems to work.
Markup as follows:
<table>
<tbody>
<a href="#">
<tr>
<td>25 Nov 2010</td>
<td>Active</td>
</tr>
</a>
</tbody>
</table>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
来自 HTML5 规范:
元素所在的上下文
tr
可以用作:这意味着您无法继承
a
元素中的tr
。在你的情况下,我会使用 Javascript onclick 代替。或者,您可以在每行 td 中放置相同的锚元素。
希望这有帮助。
From the HTML5 spec:
Contexts in which element
tr
can be used:That means you cannot inherit
tr
ina
element.In your case I would go with Javascript onclick instead. Alternatively, you can put the same anchor element in each of the rows
td
s.Hope this helps.
为什么不使用
display: table-*
CSS?它得到广泛支持并且相当无缝:HTML:
CSS:
参见 codepen
Why not use
display: table-*
CSS? It's widely supported and is fairly seamless:HTML:
CSS:
See codepen
您可以将
tr
替换为a
元素。只需将a
设置为display:table-row
You can replace the
tr
with ana
element. Just set thea
todisplay:table-row