様々なスタイルで、見栄えの良い表を簡単に作成できます。
このコンポーネントを適用するには、<table>
要素に.uk-table
クラスを追加します。
<table class="uk-table">
<caption></caption>
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
</tr>
</tbody>
<tfoot>
<tr>
<td></td>
</tr>
</tfoot>
</table>
表の見出し | 表の見出し | 表の見出し |
---|---|---|
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
表のフッター | 表のフッター | 表のフッター |
<table class="uk-table">
<caption>Table Caption</caption>
<thead>
<tr>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>Table Footer</td>
<td>Table Footer</td>
<td>Table Footer</td>
</tr>
</tfoot>
</table>
表の行間に区切り線を表示するには、.uk-table-divider
クラスを追加します。
<table class="uk-table uk-table-divider">…</table>
表の見出し | 表の見出し | 表の見出し |
---|---|---|
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
<table class="uk-table uk-table-divider">
<thead>
<tr>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
</tbody>
</table>
.uk-table-striped
クラスを追加して、表にゼブラストライプを追加します。
<table class="uk-table uk-table-striped">…</table>
表の見出し | 表の見出し | 表の見出し |
---|---|---|
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
<table class="uk-table uk-table-striped">
<thead>
<tr>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
</tbody>
</table>
.uk-table-hover
クラスを追加して、表の行にホバー状態を表示します。
<table class="uk-table uk-table-hover">…</table>
表の見出し | 表の見出し | 表の見出し |
---|---|---|
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
<table class="uk-table uk-table-hover uk-table-divider">
<thead>
<tr>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
</tbody>
</table>
表を小さくまたは大きくするには、.uk-table-small
または.uk-table-large
クラスを表に追加します。
<table class="uk-table uk-table-small">…</table>
表の見出し | 表の見出し | 表の見出し |
---|---|---|
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
<table class="uk-table uk-table-small uk-table-divider">
<thead>
<tr>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
</tbody>
</table>
表の最初の列と最後の列の外側の余白を削除して、表とぴったり合わせるには、.uk-table-justify
クラスを追加します。
<table class="uk-table uk-table-justify">…</table>
表の見出し | 表の見出し | 表の見出し |
---|---|---|
表のデータ | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. | |
表のデータ | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. |
<table class="uk-table uk-table-justify uk-table-divider">
<thead>
<tr>
<th class="uk-width-small">Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</td>
<td><button class="uk-button uk-button-default" type="button">Button</button></td>
</tr>
<tr>
<td>Table Data</td>
<td>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</td>
<td><button class="uk-button uk-button-default" type="button">Button</button></td>
</tr>
</tbody>
</table>
表の内容を垂直方向に中央揃えにするには、.uk-table-middle
クラスを追加するだけです。より具体的な選択のために、<tr>
または<td>
要素にもクラスを適用できます。
<table class="uk-table uk-table-middle">…</table>
表の見出し | 表の見出し | 表の見出し |
---|---|---|
表のデータ | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. | |
表のデータ | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. |
<table class="uk-table uk-table-middle uk-table-divider">
<thead>
<tr>
<th class="uk-width-small">Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</td>
<td><button class="uk-button uk-button-default" type="button">Button</button></td>
</tr>
<tr>
<td>Table Data</td>
<td>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</td>
<td><button class="uk-button uk-button-default" type="button">Button</button></td>
</tr>
</tbody>
</table>
表がコンテナ要素よりも幅広いか、特定のビューポート幅で大きくなりすぎる場合は、<div>
要素でラップし、ユーティリティコンポーネントから.uk-overflow-auto
クラスを追加します。これにより、内部の要素がコンテナ自体よりも幅広くなった場合に、水平スクロールバーを提供するコンテナが作成されます。
<div class="uk-overflow-auto">
<table class="uk-table">…</table>
</div>
表の見出し | 表の見出し | 表の見出し | 表の見出し | 表の見出し | 表の見出し | 表の見出し | 表の見出し | 表の見出し | 表の見出し | 表の見出し | 表の見出し |
---|---|---|---|---|---|---|---|---|---|---|---|
表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ | 表のデータ |
<div class="uk-overflow-auto">
<table class="uk-table uk-table-small uk-table-divider">
<thead>
<tr>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
</tbody>
</table>
</div>
小さな画面で表の列をスタックさせるには、.uk-table-responsive
クラスを追加します。
<table class="uk-table uk-table-responsive">…</table>
表の見出し | 表の見出し | 表の見出し |
---|---|---|
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
<table class="uk-table uk-table-responsive uk-table-divider">
<thead>
<tr>
<th>Table Heading</th>
<th>Table Heading</th>
<th>Table Heading</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
</tbody>
</table>
注記 ブラウザウィンドウのサイズを変更して、列がスタックされる様子を確認してください。
列幅またはコンテンツを変更するには、次のクラスのいずれかを使用できます。このクラスは列セルのいずれかに追加するだけで済みます。ヘッダーセルへの追加をお勧めします。
クラス | 説明 |
---|---|
.uk-table-shrink |
列幅をコンテンツに合わせて縮小するには、<th> または<td> 要素にこのクラスを追加します。 |
.uk-table-expand |
残りのスペースを埋める列幅を拡張し、最小幅を適用するには、<th> または<td> 要素にこのクラスを追加します。 |
.uk-width-* |
列幅を変更するには、幅コンポーネントからこれらのクラスのいずれかを<th> または<td> 要素に追加します。 |
<th class="uk-table-shrink"></th>
縮小 | 拡張 | 幅 小 |
---|---|---|
表のデータ | 表のデータ | 表のデータ |
表のデータ | 表のデータ | 表のデータ |
<table class="uk-table uk-table-divider">
<thead>
<tr>
<th class="uk-table-shrink">Shrink</th>
<th class="uk-table-expand">Expand</th>
<th class="uk-width-small">Width Small</th>
</tr>
</thead>
<tbody>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
<tr>
<td>Table Data</td>
<td>Table Data</td>
<td>Table Data</td>
</tr>
</tbody>
</table>
表のセルとその特定のコンテンツの表示を最適化するには、次のクラスのいずれかを追加できます。
クラス | 説明 |
---|---|
.uk-table-link |
セル全体をリンクするには、<th> または<td> 要素にこのクラスを追加し、<a> 要素を挿入します。デフォルトのリンクスタイルをリセットするには、リンクコンポーネントから.uk-link-reset クラスを追加します。 |
.uk-preserve-width |
UIkitでは画像がデフォルトでレスポンシブであるため、.uk-table-shrink クラスを使用して表セル内で画像を使用すると、画像の幅が0に縮小されます。この動作を防ぐには、ベースコンポーネントから.uk-preserve-width クラスを<img> 要素に追加します。 |
.uk-text-truncate |
表セルに固定幅を適用する場合、テキストコンポーネントからこのクラスを<td> 要素に追加してテキストを切り捨てることができます。 |
.uk-text-nowrap |
例えば.uk-table-shrink クラスを使用する場合など、テキストの折り返しを防ぐには、テキストコンポーネントからこのクラスを追加します。 |
<!-- Table link -->
<td class="uk-table-link">
<a class="uk-link-reset" href=""></a>
</td>
<!-- Preserve width -->
<td>
<img class="uk-preserve-width" src="" width="" height="" alt="">
</td>
<!-- Text truncate -->
<td class="uk-text-truncate"></td>
<!-- Text nowrap -->
<td class="uk-text-nowrap"></td>
保持 | 拡張 + リンク | 切り捨て | 縮小 + 折り返しなし | |
---|---|---|---|---|
![]() |
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. | Lorem ipsum dolor | |
![]() |
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. | Lorem ipsum dolor | |
![]() |
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. | Lorem ipsum dolor | |
![]() |
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. | Lorem ipsum dolor |
<div class="uk-overflow-auto">
<table class="uk-table uk-table-hover uk-table-middle uk-table-divider">
<thead>
<tr>
<th class="uk-table-shrink"></th>
<th class="uk-table-shrink">Preserve</th>
<th class="uk-table-expand">Expand + Link</th>
<th class="uk-width-small">Truncate</th>
<th class="uk-table-shrink uk-text-nowrap">Shrink + Nowrap</th>
</tr>
</thead>
<tbody>
<tr>
<td><input class="uk-checkbox" type="checkbox" aria-label="Checkbox"></td>
<td><img class="uk-preserve-width uk-border-circle" src="images/avatar.jpg" width="40" height="40" alt=""></td>
<td class="uk-table-link">
<a class="uk-link-reset" href="">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</a>
</td>
<td class="uk-text-truncate">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</td>
<td class="uk-text-nowrap">Lorem ipsum dolor</td>
</tr>
<tr>
<td><input class="uk-checkbox" type="checkbox" aria-label="Checkbox"></td>
<td><img class="uk-preserve-width uk-border-circle" src="images/avatar.jpg" width="40" height="40" alt=""></td>
<td class="uk-table-link">
<a class="uk-link-reset" href="">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</a>
</td>
<td class="uk-text-truncate">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</td>
<td class="uk-text-nowrap">Lorem ipsum dolor</td>
</tr>
<tr>
<td><input class="uk-checkbox" type="checkbox" aria-label="Checkbox"></td>
<td><img class="uk-preserve-width uk-border-circle" src="images/avatar.jpg" width="40" height="40" alt=""></td>
<td class="uk-table-link">
<a class="uk-link-reset" href="">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</a>
</td>
<td class="uk-text-truncate">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</td>
<td class="uk-text-nowrap">Lorem ipsum dolor</td>
</tr>
<tr>
<td><input class="uk-checkbox" type="checkbox" aria-label="Checkbox"></td>
<td><img class="uk-preserve-width uk-border-circle" src="images/avatar.jpg" width="40" height="40" alt=""></td>
<td class="uk-table-link">
<a class="uk-link-reset" href="">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</a>
</td>
<td class="uk-text-truncate">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</td>
<td class="uk-text-nowrap">Lorem ipsum dolor</td>
</tr>
</tbody>
</table>
</div>