CSS实现固定表头 HTML表格

< html >
< head >
< title ></ title >
< link  rel ="stylesheet"  href ="demo.css"  type ="text/css" >
</ head >
< body >
< p > 这段空间的高度会自动计算 </ p >
< div  id ="lockedDiv" >
< table   width ="100%"  border ="0"  cellspacing ="0" >
  
< tr >
    
< th > a </ th >
    
< th > b </ th >
    
< th > c </ th >
    
< th > d </ th >
    
< th > e </ th >
    
< th > f </ th >
    
< th > g </ th >
  
</ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
  
< tr >< td > 1 </ td >< td > 2 </ td >< td > 3 </ td >< td > 4 </ td >< td > 5 </ td >< td > 6 </ td >< td > 7 </ td ></ tr >
</ table >
</ div >
</ body >
</ html >

BODY  {
    overflow-y
: auto ;
}

div#lockedDiv
{
    width
:  100% ;
    height
:  expression(document.body.offsetHeight-document.getElementById("lockedDiv").offsetTop-25) ;
    overflow
:  auto ;
}
div#lockedDiv table th, th.locked
{
    position
: relative ;
    top
:  expression(document.getElementById("lockedDiv").scrollTop) ;
    z-index
:  20 ;
    font-family
:  "宋体" ;
    font-size
:  12px ;
    font-style
:  normal ;
    font-weight
:  bold ;
    text-align
:  center ;
    vertical-align
:  middle ;
    height
:  22px ;
    background-color
:  #DAECC8 ;
    white-space
:  nowrap ;
    border-left
:  1px solid silver ;
    border-top
:  1px solid silver ;
    border-bottom
:  1px solid silver ;
}
div#lockedDiv table
{
    border-right
:  1px solid silver ;  
}
div#lockedDiv table TD 
{
    height
:  22px ;
    font-family
:  "宋体", "Arial", "Helvetica" ;
    font-size
:  12px ;
    border-left
:  1px solid silver ;
    border-bottom
:  1px solid silver ;
}

 最近发现在一些特定条件下,诸如同态构建表格的时候,会有问题所以稍微改动了一下

 

BODY  {
    overflow-y
: auto ;
}

div#lockedDiv
{
    overflow
:  auto ;
    position
: absolute ;
    padding
: 0 ;
    margin
: 0 ;
    width
:  expression(document.body.offsetWidth-16) ;
    height
:  expression(document.body.offsetHeight-document.getElementById("lockedDiv").offsetTop-25) ;
}
div#lockedDiv table th
{
    position
: relative ;
    top
:  expression(document.getElementById("lockedDiv").scrollTop) ;   /* IE5+ only */
    z-index
:  20 ;
    font-family
:  "宋体", "Arial", "Helvetica" ;
    font-size
:  12px ;
    font-style
:  normal ;
    font-weight
:  bold ;
    text-align
:  center ;
    vertical-align
:  middle ;
    height
:  22px ;
    background-color
:  #DAECC8 ;
    white-space
:  nowrap ;
    border-left
:  1px solid silver ;
    border-top
:  1px solid silver ;
    border-bottom
:  1px solid silver ;
}
div#lockedDiv table
{
    margin
: 0 ;
    border-right
:  1px solid silver ;  
}
div#lockedDiv table TD 
{
    height
:  22px ;
    font-family
:  "宋体", "Arial", "Helvetica" ;
    font-size
:  12px ;
    border-left
:  1px solid silver ;
    border-bottom
:  1px solid silver ;
}
div#lockedDiv table TD.STD 
{
    height
:  22px ;
    font-family
:  "宋体", "Arial", "Helvetica" ;
    font-size
:  12px ;
    font-style
:  normal ;
    font-weight
:  bold ;
    background-color
:  #DAECC8 ;
    text-align
:  center ;
    border-left
:  1px solid silver ;
    border-bottom
:  1px solid silver ;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值