问题是,如果我在div中放入的内容超过其高度,则表格会开始表现奇怪。
滚动条不会像应该出现的那样出现,而是表格会变得比屏幕所能承受的更大。
请相信我的话,我确实需要将div放在表格中; 这是为了布局目的,我没有在我的问题描述中涉及此问题。
但这是我的唯一限制:最外层元素需要是一个表格,并且在其中的某个地方我想要使用div。如果您有建议可以嵌入其他元素的div,请告诉我!
但是我希望您的建议至少在firefox中可以达到期望的结果。
再次澄清:我想要的结果是,如果div包含的内容超过其高度,则滚动条应该出现,而外部表格则保持不变。
以下是代码,供您测试。
<table style='position: fixed; left: 0px; top: 0px; height: 100%;'>
<tr><td style='height: 100%;'>
<div style='height: 100%; overflow: auto;'>
FRODO!
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
...
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
</div>
</td></tr>
</table>
谢谢大家!
编辑: 回复你们的答案。
Valamo: div上的overflow=auto意味着滚动条在需要时才可见,所以应该可以工作。但为了确保我已经尝试了overflow=scroll和其他许多方法。我不明白设置doctype如何改变情况。
Ettiene: 将一个div的高度设置为100%,然后再在其中放置另一个div,并将其高度设置为100%并设置overflow=auto,那么内部div就没有问题了;当其内容过多时,它将显示滚动条,而外部div保持不变。但如果你用一个表格来替换外部div,那么你会遇到问题。因此,仅仅将元素高度设置为100%并不是问题的关键。
还有更多的想法吗? :-)