table 表头固定
<html>
<head>
<title>Test</title>
<style type="text/css">
.divClass{
height:400px;
width:25%;
overflow:auto;
}
.divHeadClass{
overflow:hidden;
}
</style>
</head>
<body>
<div id="htmlDivID" class="divClass">
<table style="word-break: break-all;background-color:#7f9db9;" border="0" cellspacing="1" cellpadding="0" >
<thead>
<tr style="background-color:#dfdfdf;">
<th width="20%" rowspan="1" colspan="1">Head</th>
<th width="5%" rowspan="1" colspan="1">Count</th>
</tr>
</thead>
<tbody>
<tr>
<td width="20%" rowspan="1">head0</td>
<td width="5%" rowspan="1">0</td>
</tr>
<tr>
<td width="20%" rowspan="1">head50</td>
<td width="5%" rowspan="1">50</td>
</tr>
<tr>
<td width="20%" rowspan="1">head05</td>
<td width="5%" rowspan="1">05</td>
</tr>
<tr>
<td width="20%" rowspan="1">head40</td>
<td width="5%" rowspan="1">40</td>
</tr>
<tr>
<td width="20%" rowspan="1">head04</td>
<td width="5%" rowspan="1">04</td>
</tr>
<tr>
<td width="20%" rowspan="1">head70</td>
<td width="5%" rowspan="1">70</td>
</tr>
<tr>
<td width="20%" rowspan="1">head07</td>
<td width="5%" rowspan="1">07</td>
</tr>
<tr>
<td width="20%" rowspan="1">head10</td>
<td width="5%" rowspan="1">01</td>
</tr>
<tr>
<td width="20%" rowspan="1">head110</td>
<td width="5%" rowspan="1">011</td>
</tr>
<tr>
<td width="20%" rowspan="1">head02</td>
<td width="5%" rowspan="1">02</td>
</tr>
<tr>
<td width="20%" rowspan="1">head03</td>
<td width="5%" rowspan="1">03</td>
</tr>
<tr>
<td width="20%" rowspan="1">head066</td>
<td width="5%" rowspan="1">066</td>
</tr>
<tr>
<td width="20%" rowspan="1">head660</td>
<td width="5%" rowspan="1">60</td>
</tr>
<tr>
<td width="20%" rowspan="1">head055</td>
<td width="5%" rowspan="1">055</td>
</tr>
<tr>
<td width="20%" rowspan="1">head0</td>
<td width="5%" rowspan="1">0</td>
</tr>
<tr>
<td width="20%" rowspan="1">head0</td>
<td width="5%" rowspan="1">0</td>
</tr>
<tr>
<td width="20%" rowspan="1">head022</td>
<td width="5%" rowspan="1">022</td>
</tr>
<tr>
<td width="20%" rowspan="1">head220</td>
<td width="5%" rowspan="1">220</td>
</tr>
<tr>
<td width="20%" rowspan="1">head055</td>
<td width="5%" rowspan="1">055</td>
</tr>
<tr>
<td width="20%" rowspan="1">head034</td>
<td width="5%" rowspan="1">034</td>
</tr>
<tr>
<td width="20%" rowspan="1">head023</td>
<td width="5%" rowspan="1">023</td>
</tr>
<tr>
<td width="20%" rowspan="1">head021</td>
<td width="5%" rowspan="1">021</td>
</tr>
<tr>
<td width="20%" rowspan="1">head210</td>
<td width="5%" rowspan="1">210</td>
</tr>
<tr>
<td width="20%" rowspan="1">head012</td>
<td width="5%" rowspan="1">012</td>
</tr>
<tr>
<td width="20%" rowspan="1">head120</td>
<td width="5%" rowspan="1">120</td>
</tr>
<tr>
<td width="20%" rowspan="1">head0111</td>
<td width="5%" rowspan="1">0111</td>
</tr>
<tr>
<td width="20%" rowspan="1">head1110</td>
<td width="5%" rowspan="1">1110</td>
</tr>
</tbody>
</table>
</div>
</body>
<script language="javascript">
window.onload = function(){
//获得存放表格的DIV
var htmlDivDom = document.getElementById("htmlDivID");
//获得表格的头部的偏移高度
var theadHeight = htmlDivDom.children[0].children[0].offsetHeight;
//创建可见的头部DIV
var divHeadDom = document.createElement("<div class=\"divHeadClass\"></div>");
//将创建的头部添加到表格DIV的前面
htmlDivDom.parentNode.insertBefore(divHeadDom,htmlDivDom);
//并设置其高度为表格头部的偏移高度
divHeadDom.style.height = theadHeight;
//克隆表格
var htmlDivCloneDom = htmlDivDom.children[0].cloneNode(true);
//将克隆表格添加到头部DIV中
divHeadDom.appendChild(htmlDivCloneDom);
//设置表格的顶边距
htmlDivDom.children[0].style.marginTop = - theadHeight;
//设置头部DIV的宽度:由表格DIV的偏移宽度-滚动条的宽度
if(htmlDivDom.scrollHeight > htmlDivDom.clientHeight){
var scrollWidth = getScrollWidth();
divHeadDom.style.width = htmlDivDom.offsetWidth - scrollWidth;
}else{
divHeadDom.style.width = htmlDivDom.offsetWidth;
}
var rows = htmlDivDom.children[0].children[1].getElementsByTagName("tr");
for(var i =0,len=rows.length;i < len;i++){
if(i % 2 == 0){
rows[i].style.backgroundColor = "#f9f9f9";
}else{
rows[i].style.backgroundColor = "#e5f1ff"; }
}
} //创建一个DIV,添加到页面中,先得到没有滚动条的宽度,再得到有滚动条的宽度,两者的差就是滚动条的宽度
function getScrollWidth(){
var divDom = document.createElement("div");
divDom.style.cssText = "position:absolute;top:-1000;height:100px;width:100px;overflow:hidden;";
var noScrollWidth = document.body.appendChild(divDom).clientWidth;
divDom.style.overflow = "scroll";
var scrollWidth = divDom.clientWidth;
return noScrollWidth - scrollWidth;
}
</script>
</html>

table 表头固定的更多相关文章
- table表头固定问题
table表头固定问题 原生的table表头在表格滚动时候无法固定,可以使用以下的方法进行模拟 1. 双table法 表头和表体各用一个table,这样会产生表格列对不齐的问题,可以使用colgrou ...
- HTML table表头固定
HTML table表头固定 说说我在最近项目中碰到的css问题吧,作为问题知识集合总结笔记: <!DOCTYPE html> <html> <head> < ...
- 纯CSS实现table表头固定(自创备忘)
因为之前约定时候产品没说要表头固定,这次迭代测试突然提出这个需求,而且不知道因为什么未知原因非要这样不可--因为之前用了table标签做表单,而且也没用插件,这下就难了点,找另外一个前端前辈妹子商量了 ...
- table 表头固定 thead固定. 1) 使用jquery.freezeheader.js
方法一: 使用jquery.freezeheader.js 固定表头: 1-: 初始化: <!DOCTYPE html> <html lang="en"> ...
- jQuery,Table表头固定插件chromatable存在的问题及解决办法
在最近的项目中需要将表格的表头固定,搜寻了大量的资料,发现chromatable插件还是比较方便的.但是当我在一个页面中多次使用 chromatable固定对个表格的表头时问题就出现了,首先说明系统的 ...
- table表头固定
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- Html - Table 表头固定和 tbody 设置 height 在IE不起作用的解决
原文地址,转载请注明出处:http://www.cnblogs.com/jying/p/6294063.html 做项目的时候发现给 tbody设置 height 和 overflow-y 在IE下不 ...
- html5 table的表头固定的HTML代码
table的表头固定的HTML代码 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- bootstrap table 实现固定悬浮table 表头并可以水平滚动
在开发项目中,需要将表格头部固定,而且表格大多数情况下是会水平滚动的.项目的css框架是bootstrap 3,故也可以叫做bootstrap table. 需要实现的是:表格头部固定,并且支持水平滚 ...
随机推荐
- FileReader 的了解
FileReader的解释 异步的读取存储在用户计算机上的文件 创建一个FileReader 对象 var reader = new FileReader(); FileReader的方法和事件 参数 ...
- h2database源码浅析:MVTable与MVIndex
Database包含一个Store:MVTableEngine.Store getMvStore() MVTableEngine.Store可以获取各tables:java.util.HashMap& ...
- 【JQuery基础教程(第三版)图灵】笔记
第1章 jQuery入门 1.jQuery官方网站:http://jquery.com 2.开发工具:Firebug 第2章 选择元素 1.属性选择符:属性选择符通过HTML元素的 ...
- C#.net在后台执行javascript
string script = string.Format("<script type='text/javascript' >alert('{0}');</script&g ...
- 查看帮助文档的一些方法:help,dir,type,func_global等
help与dir与type:在使用python来编写代码时,会经常使用python自带函数或模块,一些不常用的函数或是模块的用途不是很清楚,这时候就需要用到help函数来查看帮助.这里要注意下,hel ...
- oracle里面的时间转字符串to_char(),字符串转时间to_date(),以及substr和instr的使用。
工作中编写过的一条语句 select * from Bt_Holiday where to_char(Setting_DATE,'YYYY')=Substr('2015-03-00',1,4) AND ...
- 关于懒加载(lazy loading)
懒加载---即为延迟加载,顾名思义在需要的时候才加载,这样做效率会比较低,但是占用内存低,iOS设备内存资源有限,如果程序启动使用一次性加载的方式可能会耗尽内存,这时可以使用懒加载,先判断是否有,没有 ...
- UICollectionView的简单使用
ChildModel.h #import <Foundation/Foundation.h> @interface ChildModel : NSObject @property (non ...
- 常用 VS 快捷键积累
1. 代码块大纲显示与隐藏 Ctrl+M,L 折叠或展开所有代码块 Ctrl+M,M 折叠或展开当前所在的代码块 Ctrl+M, ...
- Visual Assist安装、破解方法
1.从各种渠道下载Visual Assist安装程序及破解补丁. 2.在路径(Win7):C:\Users\UserName\AppData\Local\Microsoft\VisualStudio\ ...