tableを見やすくするCSS
tableタグで表を実装した際にデータ量が多いと見づらくなりがちです。それを解消するためにCSSを使ってカーソルをのせるとその行をハイライト表示させる方法をご紹介します。比較させたい表の際に使えるTipsです。
デモを用意したので、PCで閲覧し、カーソルをのせてみてください。
プラン名 | 価格 | 容量 |
---|---|---|
Aプラン | 1,000円 | 100GB |
Bプラン | 1,200円 | 120GB |
Cプラン | 1,500円 | 150GB |
Dプラン | 1,700円 | 170GB |
Eプラン | 2,000円 | 200GB |
Fプラン | 2,200円 | 220GB |
Gプラン | 2,500円 | 250GB |
Hプラン | 2,800円 | 280GB |
Iプラン | 3,000円 | 300GB |
Jプラン | 3,200円 | 320GB |
<table;>
<thead>
<tr>
<th>プラン名</th>
<th>価格</th>
<th>容量</th>
</tr>
</thead>
<tbody>
<tr>
<td>Aプラン</td>
<td>1,000円</td>
<td>100GB</td>
</tr>
<tr>
<td>Bプラン</td>
<td>1,200円</td>
<td>120GB</td>
</tr>
</tbody>
</table>
tbody:hover td {
color: #77735a;
background-color: #f4f3ef;
}
tbody:hover tr:hover td {
color: #111;
background-color: #fff;
}
table {
margin-right: auto;
margin-left: auto;
width: 500px;
font-size: 14px;
text-align: center;
}
table th,
table td {
padding: 10px;
transition: 0.2s;
}
1行目のtbody:hover td
では、tbody
領域にカーソルをのせた時のtd
スタイルを指定します。ここでは、テキストと背景色のコントラスト比を低く設定しておきます。
6行目のtbody:hover tr:hover td
では、カーソルをのせている行のスタイルを指定。見やすくするためテキストと背景色のコントラスト比を高く設定します。
これでカーソルをのせている行とのせていない行の差を作り、ハイライト表示にしています。