CSS实现锁定行锁定列

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>报表展示行列固定</title>
<link type="text/css" href="Vmain.css" rel="stylesheet" />
<style>
	body, html,table {
		margin:0;
		padding:0;
	}
	
        .FixedTitleRow
        {
            position: relative; 
            top: expression(this.offsetParent.scrollTop); 
            z-index: 10;
            background-color: #E6ECF0;
        }
        
        .FixedTitleColumn
        {
            position: relative; 
            left: expression(this.parentElement.offsetParent.scrollLeft);
        }
        
        .FixedDataColumn
        {
            position: relative;
            left: expression(this.parentElement.offsetParent.parentElement.scrollLeft);
            background-color: #E6ECF0;
        }	
</style>
</head>

<body>
<div id="scrollDiv" style="overflow:auto;height:100%;width:100%;cursor:default;display:inline;position:absolute;">
<table id="Vtable_style" width="100%" border="0" align="center" cellpadding="0" cellspacing="0" style="overflow:auto;">
	<tr class="VtabExcel_Top FixedTitleRow">
        <th class="FixedTitleColumn" style=" background:url(c_img/Vbg_Excel_2.png) right top;"></th>
        <th class="FixedTitleColumn" width="110">A</th>
        <th width="56">B</th>
        <th width="175">C</th>
        <th width="175">D</th>
        <th width="145">E</th>
        <th width="56">F</th>
        <th width="175">G</th>
        <th width="170">H</th>    
  </tr>
  <tr class="FixedTitleRow">
    <td class="VtabExcel_left FixedTitleColumn">1</th>
    <th class="Vtitle_th FixedTitleColumn" colspan="8">资产负债表</td>
  </tr>
  <tr class="FixedTitleRow">
    <td class="VtabExcel_left FixedTitleColumn">2</td> 
    <td class="VSecTitle FixedTitleColumn" colspan="8">会股01表</td>
  </tr>
  <tr class="FixedTitleRow">
  	<td class="VtabExcel_left FixedTitleColumn">3</td>
    <td class="VthrTitle FixedTitleColumn" colspan="7">
    	<span class="VthrTitle_span">单位:股份公司总部</span>  
        <span class="VthrTitle_span">2011年10月</span>
    </td>
    <td class="VthrTitle FixedTitleColumn">金额单位:元</td>
  </tr>
  <tr>
    <td class="VtabExcel_left FixedDataColumn">4</th>
    <th class="FixedDataColumn">资 产</th>
    <th class="FixedDataColumn">行次 </th>
    <th>期末余额</th>
    <th>年初余额 </th>
    <th>负债及股东权益 </th>
    <th>行次 </th>
    <th>期末余额</th>
    <th>年初余额 </th>
  </tr>
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">5</td>
    <td class="navTitle FixedDataColumn">流动资产: </td>
    <td class="Vcenter FixedDataColumn">1 </td>
    <td class="Vright">17,114,201,789.99 </td>
    <td class="Vright">9,365,696,141.85 </td>
    <td class="navTitle">流动负债: </td>
    <td class="Vcenter"> </td>
    <td class="Vright"> </td>
    <td class="Vright"> </td>
  </tr>  
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">6</td>
    <td class="FixedDataColumn">货币资金</td>
    <td class="Vcenter FixedDataColumn">2 </td>
    <td class="Vright">114,201,789.99 </td>
    <td class="Vright">14,201,789.99 </td>
    <td>货币资金</td>
    <td class="Vcenter"> </td>
    <td class="Vright">17,114,201,789.99 </td>
    <td class="Vright">9,365,696,141.85 </td>
  </tr>
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">7</td>
    <td class="FixedDataColumn">内部存款 </td>
    <td class="Vcenter FixedDataColumn">3 </td>
    <td class="Vright"></td>
    <td class="Vright">5 </td>
    <td>内部存款 </td>
    <td class="Vcenter"> </td>
    <td class="Vright">114,201,789.99 </td>
    <td class="Vright">14,201,789.99 </td>
  </tr>
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">8</td>
    <td class="FixedDataColumn">货币资金</td>
    <td class="Vcenter FixedDataColumn">4 </td>
    <td class="Vright">365,696,141.85 </td>
    <td class="Vright">365,696,141.8 </td>
    <td>货币资金</td>
    <td class="Vcenter"> </td>
    <td class="Vright">365,696,141.85 </td>
    <td class="Vright">365,696,141.8 </td>
  </tr>
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">9</td>
    <td class="FixedDataColumn">内部存款 </td>
    <td class="Vcenter FixedDataColumn">5 </td>
    <td class="Vright">114,201,789.99 </td>
    <td class="Vright">365,696,141.8 </td>
    <td>内部存款 </td>
    <td class="Vcenter"> </td>
    <td class="Vright">114,201,789.99 </td>
    <td class="Vright">365,696,141.8 </td>
  </tr>
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">10</td>
    <td class="FixedDataColumn">货币资金</td>
    <td class="Vcenter FixedDataColumn">6 </td>
    <td class="Vright"> </td>
    <td class="Vright"></td>
    <td>货币资金</td>
    <td class="Vcenter"> </td>
    <td class="Vright">365,696,141.8 </td>
    <td class="Vright">114,201,789.99 </td>
  </tr>
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">11</td>
    <td class="FixedDataColumn">内部存款 </td>
    <td class="Vcenter FixedDataColumn">7 </td>
    <td class="Vright">17,114,201,789.99 </td>
    <td class="Vright">696,141.85 </td>
    <td>内部存款 </td>
    <td class="Vcenter"> </td>
    <td class="Vright"> </td>
    <td class="Vright"> </td>
  </tr>
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">12</td>
    <td class="FixedDataColumn">货币资金</td>
    <td class="Vcenter FixedDataColumn">8 </td>
    <td class="Vright">696,141.85 </td>
    <td class="Vright">-114,201,789.99 </td>
    <td>货币资金</td>
    <td class="Vcenter"> </td>
    <td class="Vright">17,114,201,789.99 </td>
    <td class="Vright">696,141.85 </td>
  </tr>
  <tr>
  	<td class="VtabExcel_left FixedDataColumn">13</td>
    <td class="FixedDataColumn">内部存款 </td>
    <td class="Vcenter FixedDataColumn">9 </td>
    <td class="Vright">647,201,789.99 </td>
    <td class="Vright">17,114,201,789.99 </td>
    <td>内部存款 </td>
    <td class="Vcenter"> </td>
    <td class="Vright">696,141.85 </td>
    <td class="Vright">-114,201,789.99 </td>
  </tr>
</table>
</div>

</body>
</html>


功能主要体现在CSS上,其中:

固定行:tr加FixedTitleRow

固定固定行中的列:td加FixedTitleColumn

固定列:td加FixedDataColumn

不固定:不加

可以用右键调用jquery方法改变固定行,但是列无法设置

<script>
$(document).ready(function(){
  $("td").click(function(){

  $("#tr4 th:lt(5)").addClass("FixedTitleColumn");
  $("#tr5 td:lt(5)").addClass("FixedTitleColumn");
  $("#tr6 td:lt(5)").addClass("FixedTitleColumn");
  });
});

</script>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值