固定された(粘着性の)ヘッダーをもつテーブル
しばしば、我々は我々がある状況に遭遇します
位置:粘着性
粘着性のポジショニングはハイブリッドの間である
我々はラップをするつもりです
ここでは、コードは、完全にunadulterated栄光(心配しないでください、私はアンブレラアカデミーのシーズン2から任意のスポイラーを含んでいないが、真剣に、それを見に行く).
HTML
CSS
長い間、今、そして幸せな位置決め!
table
それの多くのデータで.それで、我々がスクロールするとき、テーブルヘッダーはスクリーンから隠されます、そして、すぐに、我々は我々が見ているコラムを知りません.この問題は簡単にラッピングすることで対処できるtable
インdiv
, そして、フレンドリーなCSSのビット.位置:粘着性
粘着性のポジショニングはハイブリッドの間である
relative
and fixed
. 引用するhttps://developer.mozilla.org/en-US/docs/Web/CSS/position , 要素は、ドキュメントの通常のフローに従って配置され、その後、最寄りのスクロールの祖先に対して相対的に相殺され、トップ、右、ボトム、左の値に基づいて、テーブル関連要素を含むブロック(最上位ブロックレベルの祖先)を含みます基本的に、要素は、通常のドキュメントフローで発生します.特定のオフセットを過ぎてスクロールするまで、指定されたコンテナーの先頭に貼り付けられます.我々はラップをするつもりです
table
インdiv
(これを設定することでスクロール可能にします.height
and overflow-y
プロパティを作成し、th
粘着性の方法でs位置.また、テーブルの内部境界を崩壊させますborder-collapse
プロパティ.それは本当に簡単ですか?それは実際です.ここでは、コードは、完全にunadulterated栄光(心配しないでください、私はアンブレラアカデミーのシーズン2から任意のスポイラーを含んでいないが、真剣に、それを見に行く).
HTML
<!DOCTYPE html>
<html>
<head>
<title>Sticky Header</title>
<meta charset="UTF-8" />
<link rel="stylesheet" href="src/styles.css" />
</head>
<body>
<div class="wrapper">
<table>
<thead>
<tr>
<th>Number</th>
<th>Name</th>
<th>Superpower</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Luther</td>
<td>Super-strength</td>
<td>[email protected]</td>
</tr>
<tr>
<td>2</td>
<td>Diego</td>
<td>Telekinesis</td>
<td>[email protected]</td>
</tr>
<tr>
<td>3</td>
<td>Allison</td>
<td>Rumor</td>
<td>[email protected]</td>
</tr>
<tr>
<td>4</td>
<td>Klaus</td>
<td>Seance</td>
<td>[email protected]</td>
</tr>
<tr>
<td>5</td>
<td>Five</td>
<td>Time-travel</td>
<td>[email protected]</td>
</tr>
<tr>
<td>6</td>
<td>Ben</td>
<td>Inter-dimensional monster</td>
<td>[email protected]</td>
</tr>
<tr>
<td>7</td>
<td>Vanya</td>
<td>Apocalyptic destruction</td>
<td>[email protected]</td>
</tr>
<tr>
<td>-</td>
<td>Reginald</td>
<td>[Spoiler] powers</td>
<td>[email protected]</td>
</tr>
<tr>
<td>-</td>
<td>Pogo</td>
<td>Human communication</td>
<td>[email protected]</td>
</tr>
<tr>
<td>-</td>
<td>Cha-Cha</td>
<td>Ruthlessness</td>
<td>[email protected]</td>
</tr>
<tr>
<td>-</td>
<td>Hazel</td>
<td>Compassion</td>
<td>[email protected]</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
CSS
body {
font-family: "Segoe UI", sans-serif;
}
table {
width: 100%;
border-collapse: collapse;
}
th,
td {
padding: 8px;
}
th {
text-align: left;
background: #eee;
position: sticky;
top: 0px;
}
.wrapper {
border: 1px solid #ddd;
width: 100%;
height: 300px;
overflow-y: auto;
}
上の例では、CodesandBoxでここで実行できます.https://codesandbox.io/s/determined-buck-396hm 長い間、今、そして幸せな位置決め!
Reference
この問題について(固定された(粘着性の)ヘッダーをもつテーブル), 我々は、より多くの情報をここで見つけました https://dev.to/debadeepsen/a-table-with-a-fixed-sticky-header-54gmテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol