我一直在为HTML/CSS流体宽度,流体高度,固定表头工作而没有成功。我希望你能指点我一个JavaScript或jQuery解决方案。如何使用jQuery制作流体宽度,流体高度,固定标题表?
标准:
- 表必须填写的浏览器窗口(至少集装箱)
- 表必须填充可用容器的整个高度在浏览器窗口中
- TBODY必须滚动Y的整个宽度上如果有没有足够的房间中的所有行
- THEAD日和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>
为什么纯HTML/CSS一个_bust_?您的标准似乎并不苛刻。 – adamb 2013-04-24 16:33:43
@adamb,我无法使它工作。能给我看看么?从我的研究来看,这是一个普遍的问题。是的,它看起来并不是太苛刻,但是有一些重大挑战 - 1)高度总是挑战,2)溢出滚动只在表格单元显示时才起作用:阻止列的流体宽度对齐的块(可以设置每列的静态像素宽度,但不是流体百分比)。这就是我寻求js解决方案的原因。但是我很高兴在这里错了。 ;) – Ryan 2013-04-24 19:04:44
当你说你想要表格填满整个高度时,你的意思是表格单元需要垂直展开吗?例如,如果我的页面高度为900px,并且表格中只有3行,它们每个都应该是300px高?如果不是,你能澄清你需要什么吗? – DACrosby 2013-04-24 19:33:59