我一直在为 HTML/CSS 流体宽度、流体高度、固定标题表工作,但没有成功。我希望你能指点我一个 JavaScript 或 jQuery 解决方案。
标准:
- 表格必须填满浏览器窗口的整个宽度(至少是容器)
- 表格必须填满浏览器窗口中可用容器的整个高度
- 如果所有行都没有足够的空间,tbody 必须滚动 y
- thead th 和 tbody td 列必须对齐
纯 HTML/CSS 是失败的。jQuery 或 JavaScript 怎么样?
这是一个小提琴:http: //jsfiddle.net/JXWfC/6/
最终它将需要在 IE7+ 以及现代版本的 Chrome 和 FireFox 上运行。
这是我的基本页面的一些标记:
<div class="container">
<div class="sidebar">
nav here
</div>
<div class="content">
<table>
<thead>
<tr><th>column 1</th><th>2</th><th>three</th><th>this is column four</th></tr>
</thead>
<tbody>
<tr><td>data</td><td>can</td><td>have</td><td>different widths: not all the same</td></tr>
<tr><td>table</td><td>-</td><td>should</td><td>fill 100% width and 100% height</td></tr>
<tr><td>and</td><td>-</td><td>should</td><td>not require all td's to be same width</td></tr>
<tr><td>but</td><td>-</td><td>percentage</td><td>% widths are just fine</td></tr>
<tr><td>and</td><td>if</td><td>there's</td><td>too many rows, it should scroll y (overflow-y: scroll)</td></tr>
<tr><td>sample</td><td>1</td><td>row</td><td>Lorem ipsum dolor sit amit.</td></tr>
<tr><td>sample</td><td>1</td><td>row</td><td>Lorem ipsum dolor sit amit.</td></tr>
<tr><td>sample</td><td>1</td><td>row</td><td>Lorem ipsum dolor sit amit.</td></tr>
<tr><td>sample</td><td>1</td><td>row</td><td>Lorem ipsum dolor sit amit.</td></tr>
</tbody>
</table>
</div>
</div>