为了账号安全,请及时绑定邮箱和手机立即绑定

TD内的DIV是个坏主意吗?

TD内的DIV是个坏主意吗?

慕容森 2019-10-18 11:05:27
似乎我在某处听到/读到了a的<div>内部禁忌<td>。并不是说它不起作用,只是基于它们的显示类型,关于它们的兼容性不佳。找不到任何证据来支持我的预感,所以我可能完全错了。
查看完整描述

3 回答

?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

使用div实例a td并不比使用表进行布局的任何其他方式差。(尽管有些人从不使用表格进行布局,而我恰好是其中之一。)


如果您使用div的td,你会得到但在一种情况,它可能是很难预测的因素将如何调整大小。div的默认值是从其父对象确定其宽度,而表格单元格的默认值是根据其内容的大小确定其大小。


标准中如何div定义a 大小的规则td没有明确定义,因此,不同的浏览器使用略有不同的算法。


查看完整回答
反对 回复 2019-10-18
?
暮色呼如

TA贡献1853条经验 获得超9个赞

检查XHTML DTD后,我发现允许<TD>元素包含块元素,例如标题,列表以及<DIV>-元素。因此,在<TD>元素内使用<DIV>元素不会违反XHTML标准。我很确定HTML的其他现代变体具有与<TD>元素等效的内容模型。


以下是相关的DTD规则:


<!ELEMENT td %Flow;>

<!-- %Flow; mixes block and inline and is used for list items etc. -->

<!ENTITY %Flow "(#PCDATA | %block; | form | %inline; | %misc;>

<!ENTITY %block "p | %heading; | div | %lists; | %blocktext; | fieldset | table">


查看完整回答
反对 回复 2019-10-18
?
紫衣仙女

TA贡献1839条经验 获得超15个赞

不,不一定。


如果需要在TD内放置DIV,请确保正确使用TD。如果您不关心表格数据和语义,那么最终您将不会关心TD中的DIV。我认为这没有问题-如果必须这样做,就可以了。


根据HTML规范


<div>可以将A 放置在预期的流内容1处,即<td>内容模型2。


查看完整回答
反对 回复 2019-10-18
  • 3 回答
  • 0 关注
  • 1071 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信