2013-02-20 55 views
3

http://jsfiddle.net/zVscL/制作div的高度为父级td高度的100%(仅限CSS)?

这听起来很蠢,但有没有办法做到这一点?我一直在使用height:100%,我得到0px的高度。

我已阅读关于传递父项的显式height值以使其工作的要求。问题是我不能只抛出28px或任何幻数,因为父母的身高是由内容决定的(即它会变化)。我有什么选择?

编辑:请记住,这是我的问题的简化示例。是的,我需要使用桌子。无法说服上级。 (仅用于显示数据,不用于页面布局!)

+0

我很确定你不能使用表格。 – grigno 2013-02-20 13:10:07

+0

这张桌子是不幸的,我不做决定:/ – meiryo 2013-02-20 13:15:33

回答

13

您可以尝试使用overflow: auto。这是working fiddle

+0

谢谢,正在使用'溢出'魔术子弹让孩子的父母身高达到100%? – meiryo 2013-02-20 13:17:23

+1

这在Opera中不起作用。你看到的只是边界顶部的一条蓝色条子。 – cimmanon 2013-02-20 13:39:23

+0

呃,不,不是。正如cimmanon正确指出的那样,这不是一个确定的证明方式,但它可以在很多情况下解决这个问题。无论如何,这里的要点是'height:100%'只适用于父元素有定义的高度,而你不能这样做。我能想到的唯一的其他选择是将你的div设置为'position:absolute;身高:100%;'td为'position:relative'(或'absolute')。如果这并不妨碍你的布局中的其他东西,它应该做的伎俩。 – Aioros 2013-02-20 15:32:36