【发布时间】:2011-04-24 17:04:50
【问题描述】:
我需要在表格单元格中放置一个可滚动的 div。桌子应该是 100% 的高度。 div 有很多不适合屏幕的内容,因此应该出现滚动。但我只希望 div 可以滚动,而不是整个页面。
如果我不使用表格,一切都很完美:
<div style="height: 100%; width: 100px; padding: 5px; overflow: auto; border-width: 1px; border-style: solid;">
<div>
Item 1<br/>
Item 2<br/>
...
Item 300<br/>
</div>
</div>
Div 是可滚动的,页面没有滚动条。但如果它被包裹在一张桌子里:
<table style="height: 100%">
<tr>
<td>
<div style="height: 100%; width: 100px; padding: 5px; overflow: auto; border-width: 1px;
border-style: solid;">
<div>
Item 1<br/>
Item 2<br/>
...
Item 300<br/>
</div>
</div>
</td>
</tr>
</table>
页面变得可滚动,而 div 不再是这样。我能做什么?
【问题讨论】:
-
我必须问你为什么使用表格进行布局。如果单元格中有实际数据,这可能没问题。请记住,表格不是为布局而设计的。
-
不幸的是,在我的情况下必须使用表格。我需要修复很久以前写的非常复杂的布局。很难改造。
-
您的代码(带表格)在 IE8 和 chrome 中运行良好。您确定此示例不适合您吗?
-
在 Firefox 中工作需要它,但它不需要。我没有在其他浏览器中测试过...
标签: html html-table scrollbar overflow