在GridView中使用CSS固定上、左表头(似Excel冻结行列一样)(限IE)(含操作视频)

网上转载的,请大家参考,原始地址: http://ithelp.ithome.com.tw/question/10030355

在GridView中使用CSS固定上、左表头(似Excel冻结行列一样)(限IE)(含操作视频)

1.首先這樣的方式並非標準的CSS語法,然而開WebForm的時候,aspx裡面都會加入一行來檢查是否是標準的格式,有這行會失敗,必須將此行刪除
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  

2.其次,由於GridView所產生的HTML裡面,自動會加入一個DIV,這會導致CSS中的this.parentElement.offsetParent.parentElement.scrollLeft
取錯,要修正為
this.parentElement.offsetParent.offsetParent.scrollLeft
以下為範例:
首先在樣式表中加入CSS設定
  1. .FixedTitleRow      
  2. {      
  3.     position: relative;       
  4.     table-layout:fixed;   
  5.     top: expression(this.offsetParent.scrollTop-2);   
  6.     background-color:White;   
  7.     z-index: 10;      
  8. }      
  9.   
  10. .FixedTitleRow th   
  11. {   
  12.     text-overflow:ellipsis;   
  13.     overflow:hidden;   
  14.     white-space: nowrap;   
  15.     padding:2px;   
  16. }   
  17.       
  18. .FixedTitleColumn      
  19. {      
  20.     position: relative;       
  21.     left: expression(this.parentElement.offsetParent.scrollLeft-2);      
  22. }      
  23.       
  24. .FixedDataColumn      
  25. {      
  26.     position: relative;      
  27.     left: expression(this.parentElement.offsetParent.offsetParent.scrollLeft-2);      
  28. }   

接著新增aspx檔案,記得去除


使用方式很簡單

固定左邊的資料行中,設定HeadStyle的CssClass=FixedTitleColumn,以及ItemStyle的CssClass=FixedDataColumn
整個GridView的HeadStyle設定CssClass=FixedTitleRow
這樣就完成了!!
設定過程錄影說明
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值