Легко создавайте красивые таблицы с различной стилизацией.
Все варианты работы таблиц смотрите в разделе примеры таблиц.
Использование
Чтобы начать работу с компонентом, добавьте класс .uk-table
к элементу <table>
.
<table class="uk-table">
<caption></caption>
<thead>
<tr>
<th></th>
</tr>
</thead>
<tfoot>
<tr>
<td></td>
</tr>
</tfoot>
<tbody>
<tr>
<td></td>
</tr>
</tbody>
</table>
Table Caption Заголовок Заголовок Заголовок Футер Футер Футер Ячейка Ячейка Ячейка Ячейка Ячейка Ячейка <table class="uk-table"> <caption>Table Caption</caption> <thead> <tr> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tfoot> <tr> <td>Футер</td> <td>Футер</td> <td>Футер</td> </tr> </tfoot> <tbody> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> </tbody> </table>
Модификатор разделителя
Добавьте класс .uk-table-divider
, чтобы отобразить разделитель между строками таблицы.
<table class="uk-table uk-table-divider">...</table>
Заголовок Заголовок Заголовок Ячейка Ячейка Ячейка Ячейка Ячейка Ячейка Ячейка Ячейка Ячейка <table class="uk-table uk-table-divider"> <thead> <tr> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tbody> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</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>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tbody> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</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>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tbody> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</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>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tbody> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</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">Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tbody> <tr> <td>Ячейка</td> <td>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</td> <td><Кнопка class="uk-Кнопка uk-Кнопка-default" type="Кнопка">Кнопка</Кнопка></td> </tr> <tr> <td>Ячейка</td> <td>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</td> <td><Кнопка class="uk-Кнопка uk-Кнопка-default" type="Кнопка">Кнопка</Кнопка></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">Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tbody> <tr> <td>Ячейка</td> <td>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</td> <td><Кнопка class="uk-Кнопка uk-Кнопка-default" type="Кнопка">Кнопка</Кнопка></td> </tr> <tr> <td>Ячейка</td> <td>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</td> <td><Кнопка class="uk-Кнопка uk-Кнопка-default" type="Кнопка">Кнопка</Кнопка></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>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tbody> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</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>Заголовок</th> <th>Заголовок</th> <th>Заголовок</th> </tr> </thead> <tbody> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> </tbody> </table>
Внимание Сожмите окно бразузера, чтобы увидеть результат.
Модификатор ширины ячейки
Чтобы изменить ширину столбца или содержимого, вы можете использовать один из следующих классов. Вам просто нужно добавить этот класс в одну из ячеек столбца. Рекомендуется добавлять к ячейке заголовка.
Класс | Описание |
---|---|
.uk-table-shrink |
Добавьте этот класс к элементу <th> или <td> , чтобы уменьшить ширину столбца и сделать его ширину равной содержимому. |
.uk-table-expand |
Добавьте этот класс к элементу <th> или <td> , чтобы увеличить ширину столбца и заполнить оставшееся пространство. |
.uk-width-* |
Добавьте один из этих классов компонента Ширина к элементу <th> или <td> для изменения ширины столбца. |
<th class="uk-table-shrink"></th>
Shrink Expand Width Small Ячейка Ячейка Ячейка Ячейка Ячейка Ячейка <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>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> <tr> <td>Ячейка</td> <td>Ячейка</td> <td>Ячейка</td> </tr> </tbody> </table>
Утилиты
Для оптимизации отображения ячеек таблицы и их конкретного содержимого вы можете добавить один из следующих классов.
Класс | Описание |
---|---|
.uk-table-link |
Чтобы связать всю ячейку, добавьте этот класс к элементам <th> или <td> и вставьте элемент <a> .
Добавьте класс .uk-link-reset из компонента Ссылки для сброса стандартной стилизации ссылок. |
.uk-preserve-width |
Так как изображения в UIkit 3 по умолчанию являются адаптивными, использование изображения внутри ячейки таблицы с классом .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">
</td>
<!-- Text truncate -->
<td class="uk-text-truncate"></td>
<!-- Text nowrap -->
<td class="uk-text-nowrap"></td>
Preserve Expand + Link Truncate Shrink + Nowrap 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"></td> <td><img class="uk-preserve-width uk-border-circle" src="images/avatar.jpg" width="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"></td> <td><img class="uk-preserve-width uk-border-circle" src="images/avatar.jpg" width="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"></td> <td><img class="uk-preserve-width uk-border-circle" src="images/avatar.jpg" width="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"></td> <td><img class="uk-preserve-width uk-border-circle" src="images/avatar.jpg" width="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>
Все варианты работы таблиц смотрите в разделе примеры таблиц.