Довідка:Таблиці

From mediawiki.org
This page is a translated version of the page Help:Tables and the translation is 100% complete.
PD Зверніть увагу! Коли Ви редагуєте цю сторінку, то погоджуєтесь робити свій внесок під ліцензією CC0. Детальніше про умови ліцензії можна дізнатися на сторінці довідки.
PD
Запит Таблиці перенаправляється сюди; щоб отримати інформацію про структуру таблиці бази даних, див. Посібник:Структура бази даних .

Таблиці можуть бути створені на вікі сторінках. Як правило, найкраще уникати використання таблиці, якщо вона вам не потрібна. Розмітка таблиці часто ускладнює редагування сторінки.[1]

Знаки вікі-розмітки таблиць

{| початок таблиці, обов'язковий
|+ заголовок таблиці, необов'язковий; лише між початком таблиці та рядком таблиці
|- рядок таблиці, необов'язковий для першого рядка — рушій вікі знаходить перший рядок
! комірка заголовку стовпця, необов'язковий. Послідовні комірки заголовку стовпця можуть бути розміщені в одному рядку, розділені подвійним знаком (!!), або в різних рядках, які починаються одиночним знаком (!).
| Комірка даних таблиці, необов'язковий. Послідовні комірки даних таблиці можуть бути розміщені в одному рядку, розділені подвійним знаком (||), або в різних рядках, які починаються одиночним знаком (|).
|} кінець таблиці, обов'язковий.
  • Вказані вище знаки мають знаходитися на початку рядку, за винятком подвійних || та !!, які дозволяють розмістити сусідні комірки в одному рядку. Але пробіли на початку рядку перед ними дозволені та ігноруються.
  • Атрибути HTML. Кожен знак розмітки, за винятком знаку кінця таблиці, може містити один чи декілька атрибутів HTML. Атрибути мають знаходитися в тому самому рядку, що і знак. Розділяйте атрибути одиночним пробілом.
    • В комірках таблиці (| чи ||, ! чи !!, а також |+) записано вміст. Атрибути відокремлюються від вмісту одиночною вертикальною рискою (|). Вміст може бути розташований в тому самому рядку чи в наступних рядках.
    • Знаки таблиці та рядку ({| і |-) не потребують вмісту. Не додавайте вертикальну риску (|) після атрибутів, які, можливо, знаходяться в цих знаках. Якщо помилково додати таку риску безпосередньо після атрибуту в цих знаках, парсер ігнорує цю риску разом із атрибутом!
  • Вміст може бути розташований за відповідним знаком (a) в тому самому рядку, можливо, після атрибутів, чи (b) на наступних рядках. Вміст, який за правилами вікі-розмітки вимагає розташування на початку рядку, як-от списки, заголовки чи вкладені таблиці, природно, має починатися з нового рядку.
    • Символ вертикальної риски як вміст. Аби відобразити вертикальну риску (|) в тексті таблиці, застосовуйте розмітку екранування <nowiki><code>|</code></nowiki>.

Основи

Створення таблиці за допомогою меню редактора

В редакторі вікітексту поставте покажчик туди, де необхідно вставити таблицю. Далі в меню оберіть “Додатково” й натисніть кнопку OOjs UI icon table.svg Таблиця. Відкриється вікно діалогу.

Тут можна вказати, чи потрібні заголовки стовпців, а також обрати стиль меж таблиці та дозволити сортування. Відображується приклад попереднього перегляду. Можна також змінити кількість стовпців та рядків. Далі слід натиснути кнопку “Вставити”.

За замовчуванням буде згенеровано такий вікі-код:

Вікі-код:
{| class="wikitable" style="margin:auto"
|+ Текст опису
|-
! Текст заголовка !! Текст заголовка !! Текст заголовка
|-
| Приклад || Приклад || Приклад
|-
| Приклад || Приклад || Приклад
|-
| Приклад || Приклад || Приклад
|}
Відображення:
Текст опису
Текст заголовка Текст заголовка Текст заголовка
Приклад Приклад Приклад
Приклад Приклад Приклад
Приклад Приклад Приклад

Мінімальний синтаксис

В наступній таблиці не визначено меж і не дуже добре з вирівнюванням, це лише ілюстрація найбільш компактної структури вікі-коду.

Написано Відображується
{|
|Апельсин
|Яблуко
|-
|Хліб
|Пиріг
|-
|Масло
|Морозиво 
|}
Апельсин Яблуко
Хліб Пиріг
Масло Морозиво

Комірки одного рядка таблиці можуть бути записані в одному рядку тексту, розділені || (подвійною вертикальною рискою). Якщо текст у комірці має містити розрив рядку, застосовуйте ‎<br /> натомість.

Написано Відображується
{|
|Апельсин||Яблуко||більше
|-
|Хліб||Пиріг||більше
|-
|Масло||М'яке<br/>морозиво||ще<br/>більше
|}
Апельсин Яблуко більше
Хліб Пиріг більше
Масло М'яке
морозиво
ще
більше

Додаткові пробіли в комірках вікі-таблиці, як у прикладі нижче, не впливають на відображення таблиці.

Написано Відображується
{|
|  Апельсин || Яблуко || більше
|-
|   Хліб || Пиріг || більше
|-
|   Масло || Морозиво || ще більше
|}
Апельсин Яблуко більше
Хліб Пиріг більше
Масло Морозиво ще більше

Комірка таблиці може містити довгий текст чи іншу вікі-розмітку:

Написано Відображується
{|
|Lorem ipsum dolor sit amet, 
consetetur sadipscing elitr, 
sed diam nonumy eirmod tempor invidunt
ut labore et dolore magna aliquyam erat, 
sed diam voluptua. 

At vero eos et accusam et justo duo dolores
et ea rebum. Stet clita kasd gubergren,
no sea takimata sanctus est Lorem ipsum
dolor sit amet. 
|
* Lorem ipsum dolor sit amet
* consetetur sadipscing elitr
* sed diam nonumy eirmod tempor invidunt
|}
Lorem ipsum dolor sit amet,

consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.

At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

  • Lorem ipsum dolor sit amet
  • consetetur sadipscing elitr
  • sed diam nonumy eirmod tempor invidunt

Заголовки

Комірка таблиці перетворюється на комірку заголовку заміною вертикальної риски "|" знаком оклику "!". Заголовки за замовчуванням відображуються напівжирним шрифтом та відцентрованими.

Написано Відображується
{|
! style="text-align:left;"| Артикул
! Кількість
! Ціна
|-
|Апельсин
|10
|7.00
|-
|Хліб
|4
|3.00
|-
|Масло
|1
|5.00
|-
!Разом
|
|15.00
|}
Артикул Кількість Ціна
Апельсин 10 7.00
Хліб 4 3.00
Масло 1 5.00
Разом 15.00
Якщо в комірці заголовку застосовано атрибут (як-от в 'Артикул'), його від вмісту відділяє вертикальна риска '|'. Не знак оклику '!'.

Заголовок таблиці

Перед таблицею можна додати заголовок таблиці в такий спосіб.

Написано Відображується
{|
|+Подібні продукти
|-
|Апельсин
|Яблуко
|-
|Хліб
|Пиріг
|-
|Масло
|Морозиво 
|}
Подібні продукти
Апельсин Яблуко
Хліб Пиріг
Масло Морозиво

Атрибут class="wikitable"

Типовий стиль (світло-сіре тло, межі, відступи й вирівнювання ліворуч) вказується атрибутом class="wikitable" знаку початку таблиці.

Написано Відображується
{| class="wikitable"
|+Подібні продукти
|-
|Апельсин
|Яблуко
|-
|Хліб
|Пиріг
|-
|Масло
|Морозиво 
|}
Подібні продукти
Апельсин Яблуко
Хліб Пиріг
Масло Морозиво

Атрибути colspan та rowspan

До комірок таблиці можна застосувати атрибути HTML colspan та rowspan для створення складнішої розмітки.

Написано Відображується
{| class="wikitable"
!colspan="6"|Список покупок
|-
|rowspan="2"|Хліб та масло
|Пиріг
|Булочки
|Слойка
|colspan="2"|Круасан
|-
|Сир
|colspan="2"|Морозиво
|Масло
|Йогурт
|}
Список покупок
Хліб та масло Пиріг Булочки Слойка Круасан
Сир Морозиво Масло Йогурт

Інші атрибути HTML

Ви можете додавати атрибути HTML до знаків вікі-розмітки таблиці. Офіційну документацію щодо атрибутів HTML див. на сторінці специфікацій W3C HTML атрибутів таблиць.

Атрибути для всієї таблиці

Вміщення атрибутів до знаку початку таблиці ({|) застосовує їх до всієї таблиці.

Написано Відображується
{| class="wikitable" style="text-align: center; color: green;"
|Апельсин
|Яблуко
|12,333.00
|-
|Хліб
|Пиріг
|500.00
|-
|Масло
|Морозиво
|1.00
|}
Апельсин Яблуко 12,333.00
Хліб Пиріг 500.00
Масло Морозиво 1.00

Атрибути для комірки

Ви можете додавати атрибути до окремих комірок. Приміром, числа виглядають краще, якщо вирівняні праворуч.

Написано Відображується
{| class="wikitable"
| Апельсин
| Яблуко
| style="text-align:right;" | 12,333.00
|-
| Хліб
| Пиріг
| style="text-align:right;" | 500.00
|-
| Масло
| Морозиво
| style="text-align:right;" | 1.00
|}
Апельсин Яблуко 12,333.00
Хліб Пиріг 500.00
Масло Морозиво 1.00

Можна додавати атрибути комірок і в тому форматі, коли декілька комірок записано в один рядок. В такому разі комірки мають бути відокремлені одна від одної знаком ||, а всередині комірки атрибут і вміст розділені знаком |.

Написано Відображується
{| class="wikitable"
| Апельсин || Яблуко     || style="text-align:right;" | 12,333.00
|-
| Хліб || Пиріг       || style="text-align:right;" | 500.00
|-
| Масло || Морозиво || style="text-align:right;" | 1.00
|}
Апельсин Яблуко 12,333.00
Хліб Пиріг 500.00
Масло Морозиво 1.00

Атрибути для рядків

Атрибути можна вказати також для всього рядка таблиці.

Написано Відображується
{| class="wikitable"
| Апельсин
| Яблуко
| style="text-align:right;"| 12,333.00
|-
| Хліб
| Пиріг
| style="text-align:right;"| 500.00
|- style="font-style: italic; color: green;"
| Масло
| Морозиво
| style="text-align:right;"| 1.00
|}
Апельсин Яблуко 12,333.00
Хліб Пиріг 500.00
Масло Морозиво 1.00

Атрибути для підпису й заголовків

Атрибути також можна додавати до підпису таблиці та комірок заголовку в такий спосіб.

Написано Відображується
{| class="wikitable"
|+ style="caption-side:bottom; color:#e76700;"|''Подібні продукти''
|-
! style="color:green" | Фрукти
! style="color:red" | Калорійне
|-
|Апельсин
|Масло
|-
|Груша
|Пиріг
|-
|Яблуко
|Морозиво 
|}
Подібні продукти
Фрукти Калорійне
Апельсин Масло
Груша Пиріг
Яблуко Морозиво

Товщина межі

Якщо атрибут "border-width:" містить єдине число, воно визначає товщину межі всіх чотирьох боків:

Написано Відображується
{|style="border-style: solid; border-width: 20px"
|
Привіт
|}

Привіт

Якщо в атрибуті "border-width:" вказано більше одного числа аж до чотирьох, вони задають товщину межі вгорі, справа, внизу, зліва (ЗАПАМ'ЯТАЙТЕ порядок за годинниковою стрілкою ↑→↓←):

Написано Відображується
{|style="border-style: solid; border-width: 10px 20px 100px 0"
|
Привіт
|}

Привіт

Якщо чисел менше чотирьох:
  • три, тобто top, right, bottom: значення для left буде таким самим, як вказане для right (друге число). Товщина бічних меж буде однаковою.
  • два, тобто top, right: значення для bottom буде таким, як для top (перше число), а значення для left таким, як для right (друге число). Товщини верхньої та нижньої меж будуть однакові, товщини бічних меж теж.
  • одне, тобто top: вказане для top значення застосовується до всіх меж - для right, bottom і left. Вся межа матиме однакову товщину.

Інший спосіб визначення товщини меж комірки надають атрибути "border-left", "border-right", "border-top" та "border-bottom":

Написано Відображується
{|style="border-left:solid 10px black;border-right:solid 20px black;border-top:solid 30px black;border-bottom:solid 40px black;" align="center" 
|
Привіт
|}

Привіт

Атрибути HTML, як-от "width=", "border=", "cellspacing=", "cellpadding=" тощо, не потребують вказівки одиниць вимірювання, значення вказуються в пікселях. Також вони неприпустимі в HTML 5.

В "cellpadding" задається інтервал між вмістом комірки та її межею.[2]

Властивості стилю CSS мають пріоритет перед атрибутами HTML, в них для ненульових чисел має бути вказано одиниці вимірювання, приміром, "px" для пікселів.

Атрибути HTML та стилі CSS разом

Атрибути стилю CSS можуть бути додані окремо чи разом з іншими атрибутами HTML.

Написано Відображується
{| class="wikitable" style="color:green; background-color:#ffffcc;" cellpadding="10"
|Апельсин
|Яблуко
|-
|Хліб
|Пиріг
|-
|Масло
|Морозиво 
|}
Апельсин Яблуко
Хліб Пиріг
Масло Морозиво

Відступи

Написано Відображується
{|class=wikitable 
| style="padding: 10px" | Приклад style="padding:10px"
|-
| style="padding: 50px" | Приклад style="padding:50px"<br/><br/>Можна вказати відступи для '''окремої комірки'''
|-
| style="padding:100px" | Приклад style="padding:100px"
|}
Приклад style="padding:10px"
Приклад style="padding:50px"

Можна вказати відступи для окремої комірки
Приклад style="padding:100px"

Ширини стовпців

Ширини стовпців вказуються в такий спосіб.

Написано

{| class="wikitable" style="width: 85%;"
| colspan="2" | Цей стовпчик шириною 85% від ширини екрану
|-
| style="width: 30%"| '''Ширина цього стовпчика 30% від 85% ширини екрану'''
| style="width: 70%"| '''Ширина цього стовпчика 70% від 85% ширини екрану'''
|}

Відображується

Цей стовпчик шириною 85% від ширини екрану
Ширина цього стовпчика 30% від 85% ширини екрану Ширина цього стовпчика 70% від 85% ширини екрану

Зручність сприйняття комірок заголовку

В комірках заголовку таблиці не зазначено, яких даних таблиці цей заголовок стосується (тих, що знаходяться в тому самому стовпці чи в тому самому рядку). Коли таблиця відображується у візуальному 2D середовищі, це зазвичай легко зрозуміти.

Але коли таблицю відображує невізуальне (текстове) середовище, ви можете допомогти браузеру визначити, яка комірка заголовку стосується кожної комірки даних (можливо, для повторення заголовку якимось помічником сприйняття), зазначивши в комірках заголовку атрибути scope="row" чи scope="col". У більшості випадків простих таблиць ви вказуєте scope="col" для всіх комірок першого рядка та scope="row" для першої комірки кожного з наступних рядків:

Написано Відображується
{| class="wikitable"
|-
! scope="col"| Артикул
! scope="col"| Кількість
! scope="col"| Ціна
|-
! scope="row"| Хліб
| 0.3 kg
| $0.65
|-
! scope="row"| Масло
| 0.125 kg
| $1.25
|-
! scope="row" colspan="2"| Разом
| $1.90
|}
Артикул Кількість Ціна
Хліб 0.3 kg $0.65
Масло 0.125 kg $1.25
Разом $1.90

Вирівнювання

Вирівнювання таблиці

Вирівнювання таблиці виконується за допомогою CSS. Вирівнювання таблиці контролюється полями. Фіксоване поле з одного боку визначає вирівнювання таблиці до цього боку, якщо поле з іншого боку визначене як auto. Для відцентрування таблиці визначте обидва поля як auto.

Наприклад, для вирівнювання таблиці праворуч:

Написано Відображується
{| class="wikitable" style="margin-left: auto; margin-right: 0px;"
| Апельсин
| Яблуко
|-
| Хліб
| Пиріг
|-
| Масло
| Морозиво 
|}
Апельсин Яблуко
Хліб Пиріг
Масло Морозиво

Для відцентрованої таблиці:

Написано Відображується
{| class="wikitable" style="margin: auto;"
| Апельсин
| Яблуко
|-
| Хліб
| Пиріг
|-
| Масло
| Морозиво 
|}
Апельсин Яблуко
Хліб Пиріг
Масло Морозиво

Обтікання таблиці текстом

Якщо вирівняти таблицю на сторінці ліворуч або праворуч, текст, написаний після таблиці, буде відображено після неї, а поряд із таблицею залишиться вільне місце. Можна охопити таблицю текстом, дозволивши їй плавати замість звичайного вирівнювання. Це досягається атрибутом CSS float, який може визначити також, з лівого чи правого боку таблицю обтікатиме текст. При застосування float поля не визначають вирівнювання таблиці і застосовуються лише для вказівки проміжку між текстом та охоплюваною таблицею.

Написано Відображується
{| class="wikitable" style="float:right; margin-left: 10px;"
| Апельсин
| Яблуко
|-
| Хліб
| Пиріг
|-
| Масло
| Морозиво 
|}

Lorem ipsum dolor sit amet, consectetuer adipiscing 
elit, sed diam nonummy nibh euismod tincidunt ut 
laoreet dolore magna aliquam erat volutpat. Ut wisi 
enim ad minim veniam, quis nostrud exerci tation 
ullamcorper suscipit lobortis nisl ut aliquip ex ea 
commodo consequat. Duis autem vel eum iriure dolor 
in hendrerit in vulputate velit esse molestie consequat, 
vel illum dolore eu feugiat nulla facilisis at vero 
eros et accumsan et iusto odio dignissim qui blandit 
praesent luptatum zzril delenit augue duis dolore te 
feugait nulla facilisi.
Апельсин Яблуко
Хліб Пиріг
Масло Морозиво

Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.

Вирівнювання вмісту комірки

Вирівнювання вмісту комірки контролюється двома властивостями CSS: text-align та vertical-align. Обидва атрибути можуть бути вказані в знаках рядка чи окремої комірки, а text-align ще і в знаку початку таблиці.

Написано Відображується
{| class="wikitable"
|- style="vertical-align:top;"
| style="height:100px; width:100px; text-align:left;" | A
| style="height:100px; width:100px; text-align:center;" | B
| style="height:100px; width:100px; text-align:right;" | C
|- style="vertical-align:middle;"
| style="height:100px; width:100px; text-align:left;" | D
| style="height:100px; width:100px; text-align:center;" | E
| style="height:100px; width:100px; text-align:right;" | F
|- style="vertical-align:bottom;"
| style="height:100px; width:100px; text-align:left;" | G
| style="height:100px; width:100px; text-align:center;" | H
| style="height:100px; width:100px; text-align:right;" | I
|}
A B C
D E F
G H I

Перестороги

Від'ємні числа

Якщо комірку записано з нового рядка, а її вміст починається із числа, якому передує знак мінус (воно могло вийти внаслідок обчислення параметру), розмітка може зламатися, оскільки знак |- розпізнається як початок нового рядка таблиці. Для уникнення цього додавайте пробіл перед значенням (| -6) або застосовуйте однорядкову розмітку комірок (||-6).

CSS та атрибути

Межі таблиці, вказані за допомогою CSS, можуть бути некоректно відображені невеликим набором текстових браузерів, на відміну від вказівки атрибутом HTML.

Спільні атрибути для стовпців, груп стовпців чи груп рядків

Синтаксис розмітки таблиць MediaWiki наразі не підтримує спільні атрибути для стовпців (елемент HTML ‎<col />), груп стовпців (елемент HTML ‎<colgroup>‎</colgroup>) чи груп рядків (елементи HTML ‎<thead>‎</thead>, ‎<tbody>‎</tbody> та ‎<tfoot>‎</tfoot>). Ці стандартні елементи HTML не приймаються навіть в синтаксисі HTML чи XHTML.

Всі рядки та комірки (заголовків і даних) таблиці відображуються як єдина неявна група рядків (елемент HTML ‎<tbody>‎</tbody>) без застосування атрибутів та стилів.

Таблиці і Візуальний редактор (ВР)

Див. також: Довідка:Візуальний редактор/Посібник користувача

Див. Phab: T108245: "Fully support basic table editing in the visual editor". Дивись перелік задач. Завершені задачі закреслено. Може бути складно з'ясувати з тамтешньої технічної мови, що саме було поліпшено чи які функції додано. Будь ласка, додавайте пояснення внизу.

Тепер можна переносити й видаляти стовпці чи рядки

Натисніть заголовок стовпця чи рядка. Далі натисніть стрілку. Оберіть у спливаючому меню "Move" чи "Delete".

Вставити порожній рядок чи стовпчик

В тому самому спливаючому меню оберіть "Insert".

Копіювання таблиці з веб-сторінки до візуального редактора

Є можливість скопіювати таблицю на веб-сторінці і вставити її безпосередньо у візуальний редактор (ВР). Для безпечного виконання використовуйте пісочницю, перевірте код в редакторі вікітексту, потім перевірте коректне відображення таблиці у візуальному редакторі та в режимі попереднього перегляду.

Допоміжні інструменти

  • Excel2Wiki дозволяє скопіювати таблицю стилів із Excel, Apache OpenOffice, LibreOffice чи Gnumeric і перетворити її на таблицю у вікікоді.

Див. також

Примітки

  1. Таблиці можуть бути створені з використанням елементів HTML безпосередньо, або за допомогою вікі-кодів. Елементи для побудови таблиці в HTML із застосуванням добре описані на багатьох веб-ресурсах і тут не розглядатимуться. Перевагою вікі-коду розмітки таблиць є застосування для цього символів, які спрощують сприйняття структури таблиці порівняно з розміткою тегами HTML.
  2. HTML table cellpadding Attribute