私の質問をタイトルで網羅的に説明するのは難しかったので、説明をより明確にしようと思います。セマンティックなアプローチを意図的に避けて<div>
、CSS プロパティなどを使用および適用してテーブルを作成します。すべてが正常に機能しており、現在、を使用して固定ヘッダーを実現しようとしています。結果は次のとおりです。display: table
<table>
position: fixed
当然のdisplay: table-cell
ことながら、セルの残りの部分に適用されると、この望ましくない動作が引き起こされます。セルは新しいコンテンツに合わせて自動サイズ変更min-width: 100px
され、CSS ファイルに適用したルールに従っています。
作業中のペンへのリンク: https://codepen.io/l_core/pen/ZLQEjq
純粋な CSS アプローチを使用して、ヘッダーと「本文」セルを完全に揃える方法はありますか? JS を使用して幅を再計算することもできますが、これを実現するための洗練された方法があると確信しており、ここで専門家にその方法を尋ねたいと思います。
コードの下:
HTML
<!-- Row Container -->
<div class="row-container" id="row1">
<!-- Header cell container -->
<div class="cell cell-header" id="cell1">
<!-- Cell content container -->
<div class="cell-content">
<span>Cell</span>
</div>
</div>
<div class="cell cell-header" id="cell2">
<div class="cell-content">
<span>Cell</span>
</div>
</div>
<div class="cell cell-header" id="cell3">
<div class="cell-content">
<span>Cell</span>
</div>
</div>
<div class="cell cell-header" id="cell4">
<div class="cell-content">
<span>Cell</span>
</div>
</div>
<div class="cell cell-header" id="cell5">
<div class="cell-content">
<span>Cell</span>
</div>
</div>
CSS
#row1 {
position: fixed;
}
完全なコードについては、上に投稿したペンをご覧ください。彼の全編を投稿するのが良い考えかどうかはわかりません。