使用滚动条固定表格标题IE8中的GridView中
问题描述:
我想实现一个固定的标题功能除了现有的GridView,SGridView的子类。使用滚动条固定表格标题IE8中的GridView中
我的问题是,使用下面列出的解决方案,滚动条出现在标题行下面,看起来很俗气。我宁愿滚动条通过页眉垂直运行到页脚。唯一的问题是,这意味着第一对行将被标题覆盖,因为滚动条高度不包含标题行(我认为这是绝对定位的副作用)。任何想法如何纠正?
我的解决方案由以下部分组成:
<div class="IEScrollDiv">
<table class="GridView">
<thead>
<tr> <th clas="GVHeader"> my header row</th> </tr>
</thead>
<tbody>
...
</tbody>
</table>
</table>
更多或更少的,增加了额外的代码插入到渲染()方法来包装的表中可以滚动一个div。没什么太花哨。然后,我将表格配置为渲染,并为可访问性添加标签。
因为在IE中添加滚动到tbody是未定义的,所以我无法利用它来创建一个固定的标题(跛脚)。另外,表达式css规则已经从IE8中弃用了,所以我不能使用这种方法(大量的在线教程利用它)。
所以,我通过它的类GVHeader将javascript添加到绝对定位标题行。
感谢
答
对于那些谁可能最终希望实现类似的东西,以为我会后我的解决方案。
我无法得到我想要的确切样子(滚动条穿过标题,而是在它旁边)。
我只是让gridview渲染一个空的div,并带上一个类,使它的x个像素高到包含标题的间隙空间。然后只是将该标题重新定位在该div的顶部。现在滚动条包含标题行作为高度的一部分。
这样的标记看起来像这样到底
<div class="IEScrollDiv">
<div class="EmptyDiv"></div>
<table class="GridView">
<thead>
<tr> <th clas="GVHeader"> my header row</th> </tr>
</thead>
<tbody>
...
</tbody>
</table>
</table>
.EmptyDiv
{
height: 33px;
margin: 0;
padding: 0;
background: #ffffff;
}
也许下边距添加到滚动DIV ..然后将标题行到保证金区域??? – 2011-03-14 20:58:07