これは、JavaScriptでCSSを使用して行うことができます。
基本的に、CSSを使用してテーブルとテーブルヘッダー行を配置し、テーブルをだましてdivのように動作させます。次に、javascriptを使用して、テーブルヘッダー行のCSS配置と、テーブルがスクロールするときに通常のテーブル行を非表示にする「マスク」divを操作します。テーブルはdivであると見なし、セルの幅を一致させずにセルのサイズを変更するため、CSSを使用して、テーブルヘッダーの幅がtdの幅と一致するように幅を設定する必要もあります。
関連するコンポーネントは次のとおりです。
<!-- divs with IDs are manipulated with javascript -->
<div class="fixedTableHolder">
<div class="maskHolder">
<div id="mask" class="mask"> </mask>
</div>
<div class="fixedTable">
<div id="theTable" class="theTable">
<!-- here is the table, header row must have an ID -->
<table border="0" cellspacing="5" cellpadding="5">
<tr id="thFixed" class="thFixed">
<td class="col1">Header cell 1</td>
</tr>
<tr>
<td class="col1">regular cell</td>
</tr>
</table>
</div>
</div>
</div>
これはかなり複雑で、実装には1〜2分以上かかります。頻繁に再利用するアプリでやった。これがjsFiddleのデモです(CSSとjavascript、およびhtmlが含まれています):http: //jsfiddle.net/deborah/Msvvr/