SimpleTable
SimpleTable — расширение для простой вставки таблиц на вики-страницы, в том числе, скопированных из текстовых/табличных процессоров (то есть набора колонок с символом табуляции в качестве разделителя).
В Mediawiki4Intranet включена собственная версия расширения, основанная на идее оригинального mediawikiwiki:Extension:SimpleTable, но переделанная и улучшенная.
Самое важное отличие — полностью другой метод парсинга и генерации таблиц. Текст внутри тега <tab> сначала прогоняется через вики-парсер, причём специальным образом, сохраняющим все переводы строк и не добавляющим новых, а потом разбивается на отдельные колонки. Это даёт возможность, например, даже при использовании разделителя «bar» (символа "|") использовать вики-шаблоны с параметрами внутри колонок, несмотря на то, что параметры сами разделяются вертикальной чертой.
Ещё одно отличие — есть возможность задавать CSS-стили для колонок в параметрах с именами вида colN="" (нумерация N начинается с 1). Ещё добавлен разделитель «semicolon» (точка с запятой «;»).
Использование расширения: таблицы вставляются тегом <tab>.
<tab sep="разделитель" head="top|left|topleft" colN="стиль колонки с номером N" аргументы..., например class="wikitable", class="sortable"> каждая строка текста соответствует строке таблицы. разделителем разделяются колонки. </tab>
Например:
<tab cellpadding="5" border="1" sep="spaces" head="top" class="wikitable" col2="background: #fee"> Месяцы: январь февраль март апрель май июнь июль август сентябрь октябрь ноябрь декабрь Дневная_температура 21 21 22 23 25 27 29 28 26 24 22 20 Ночная_температура 15 15 15 16 17 17 18 17 16 15 15 14 Солнечные_часы/день 6 6 7 8 9 9 9 8 7 7 6 6 Дождливые_дни/месяц 6 4 3 2 2 1 0 0 2 5 6 7 Температура_воды 19 18 18 18 19 20 21 23 20 18 18 18 </tab>
Месяцы: | январь | февраль | март | апрель | май | июнь | июль | август | сентябрь | октябрь | ноябрь | декабрь |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Дневная_температура | 21 | 21 | 22 | 23 | 25 | 27 | 29 | 28 | 26 | 24 | 22 | 20 |
Ночная_температура | 15 | 15 | 15 | 16 | 17 | 17 | 18 | 17 | 16 | 15 | 15 | 14 |
Солнечные_часы/день | 6 | 6 | 7 | 8 | 9 | 9 | 9 | 8 | 7 | 7 | 6 | 6 |
Дождливые_дни/месяц | 6 | 4 | 3 | 2 | 2 | 1 | 0 | 0 | 2 | 5 | 6 | 7 |
Температура_воды | 19 | 18 | 18 | 18 | 19 | 20 | 21 | 23 | 20 | 18 | 18 | 18 |
Сортировка таблицы на клиентской стороне: используя class="sortable", можно делать динамически сортируемые таблицы:
EMP_NO | DEPT_NO | PRO_NO | EMP_BDATE | EMP_SAL | EMP_BONUS |
---|---|---|---|---|---|
2441 | 1 | 155 | 1955 | 16000.00 | 14000.00 |
2442 | 1 | 20 | 1960 | 14000.00 | NULL |
2443 | 1 | NULL | 1960 | 16000.00 | 13000.00 |
2452 | 1 | 155 | NULL | 15000.00 | 14000.00 |
2453 | 1 | 234 | NULL | 17000.00 | NULL |
2444 | 2 | 177 | 1970 | 17000.00 | 16000.00 |
Атрибуты тега «tab», обрабатываемые самим SimpleTable:
- sep
- Символ-сепаратор колонок:
- tab
- символ табуляции
- space
- пробел
- spaces
- один или несколько пробелов или символов табуляции
- comma
- запятая
- semicolon
- точка с запятой
- bar
- вертикальная черта "|"
- head
- этот атрибут, если есть, указывает, где распологается заголовок таблицы.
- top
- верхняя запись
- left
- первая колонка
- topleft
- и верхняя запись и первая (левая) колонка таблицы.
- colN
- (N-число) задаёт CSS-стили для колонки таблицы номер N, нумерация с 1.
Также принимаются все атрибуты, которые можно указать в HTML-коде для таблиц, например:
- class, style
- Название CSS-стиля таблицы / текст стиля таблицы. Названия классов можно комбинировать, например, class="wikitable sortable". Стиль применяется к самой таблице, а не к её ячейкам. Чтобы применить стиль к ячейкам, нужно определить класс .className td. Например, чтобы выровнять все ячейки по левому краю, нужно добавить на страницу следующий текст:
<html><style>.classname td { text-align: right; }</style></html>
- class="wikitable"
- Встроенный «симпатичный» вид вики-таблиц, начиная с MediaWiki 1.16.
- class="simpletable"
- SimpleTable’овский «симпатичный» вид вики-таблиц, действует в MediaWiki4Intranet.
- class="sortable"
- Разрешить сортировать таблицу посредством клика на ячейках заголовка (использует JavaScript).
- border
- Толщина границ, попадает в HTML-атрибут таблицы. Подобные границы выглядят убого, лучше используйте классы simpletable/wikitable.
- cellpadding
- Ширина поля между значениями ячеек и границами ячеек.