Скачиваний:
0
Добавлен:
01.05.2025
Размер:
392.19 Кб
Скачать

Заголовки строк и столбцов

У многих таблиц есть "шапки" — заголовки строк и столбцов, оформление которых чем-то отличается от остальной таблицы. Например, в нашем примере роль такой шапки играют надписи "Ссылки" и "Новости". Несмотря на то, что они имеют одинаковое форматирование, мы кодировали это форматирование в каждой ячейке отдельно:

<TABLE>

<TR>

<TD align=center><B>ССЫЛКИ</B></TD>

<TD align=center><B>НОВОСТИ</B></TD>

</TR>

</TABLE>

Но если "заголовочных" ячеек слишком много, то такое занятие может и надоесть. Конечно, выравнивание по центру можно вынести в дескриптор <TR>:

<TABLE>

<TR align=center>

<TD><B>ССЫЛКИ</B></TD>

<TD><B>НОВОСТИ</B></TD>

</TR>

</TABLE>

Так уже лучше. Но, во-первых, к полужирному шрифту это не относится. А, во-вторых, как быть, если "шапка" затрагивает не только первую строку таблицы, но и, например, левый столбец?

Для того чтобы разметка таблиц не была слишком утомительна, в HTML предусмотрены специальные дескрипторы для "заголовочных" ячеек — <ТН> (от table header — "заголовок таблицы"). Дескриптор <ТН> полностью подобен дескриптору <TD>, за исключением того, что его содержимое обычно выводится полужирным шрифтом и выравнивается по центру. Поэтому дескрипторы <ТН> можно использовать в любом месте таблицы вместо дескрипторов <TD>, а вовсе не обязательно только для верхней строки или левого столбца.

Группировка данных

При построении таблиц мы можем легко задать единый тип выравнивания для отдельной ячейки и даже целого табличного ряда. Однако гораздо чаще может возникнуть необходимость в едином выравнивании информационных данных конкретного столбца. Столбец в таблице — это последовательность ячеек, располагающихся в разных рядах.

Стандартными средствами HTML нам пришлось бы задавать один и тот же тип выравнивания для отдельно взятой ячейки, формирующей нужный столбец:

<TABLE>

<TR>

<TD align=right>Ячейка 1 с выравниванием вправо</ТD>

<TD align=center>Ячейка 1 с выравниванием по центру</ТD>

</TR>

<TR>

<TD align=right >Ячейка 2 с выравниванием вправо</ТD>

<TD align=center>Ячейка 2 с выравниванием по центру</ТD>

</TR>

</TABLE>

При работе с браузером Internet Explorer, труд разработчика электронного

документа может быть значительно облегчен за счет таких тегов, как <COL> И <COLGROUP>.

Теги < COL > и <COLGROUP> предназначены для определения свойств отображения табличных данных, сгруппированных по конкретному признаку. Они оба могут иметь параметр SPAN, задающий количество соседних столбцов, и параметр ALIGN, устанавливающий единый тип выравнивания для выбранного столбца (возможные значения: по левому краю, по правому краю, по центру; формат записи аналогичен тегам <TD> и <TH>).

Помимо этого тег <COLGROUP> может содержать дополнительный параметр вертикального выравнивания данных — VALIGN (возможные значения: по верхнему краю, по нижнему краю, по середине; формат записи аналогичен тегам <TD> и <TH>).

Пример группировки данных таблицы.

<TABLE ALIGN="center" BORDER="2" CELLSPACING="0" CELLPADDING="5"

WIDTH="100%" HEIGHT="200">

<COLGROUP ALIGN="center" SPAN="2">

<COLGROUP ALIGN="right" SPAN="2">

<TR>

<ТD>Ячейка 1</ТD><ТD>Ячейка 2</ТD><ТD>Ячейка 3</ТD><ТD>Ячейка 4</TD>

</TR>

<TR>

<ТD>Ячейка 5</ТD><ТD>Ячейка 6</ТD><ТD>Ячейка 7</ТD><ТD>Ячейка 8</TD>

</TR>

</TABLE>

Таблица состоит из четырех столбцов, в которых данные сгруппированы по заданному признаку. Первые два столбца имеют тип выравнивания по центру, последние два — по правому краю.

Похоже, с форматированием первых нескольких столбцов мы разобрались. Но как сообщить браузеру, что как раз начальные столбцы нужно пропустить и изменить форматирование, например, второго и третьего столбов таблицы? Ведь в HTML, в отличие от электронных таблиц, не существует нумерации строк и столбцов. Действительно, это, пожалуй, недоработка. Приходится пойти на хитрость: поставить дескриптор <COLGROUP> без параметров форматирования, указав лишь, сколько столбцов нужно "пропустить":

<COLGROUP SPAN=K> <!— пропустить K столбцов -->

<COLGROUP параметры следующей группы столбцов >

Какие еще параметры, кроме горизонтального выравнивания, можно присвоить группе ячеек с помощью дескриптора <COLGROUP>? Оказывается, их не так уж много. Это вертикальное выравнивание (параметр valign), ширина и высота ячеек (width и height) и цвет фона (bgcolor). Значения этих параметров и правила их присваивания такие же, как для дескрипторов ячеек <TD>.

Предположим, нам требуется конкретизировать свойства определенного столбца внутри группы. Например, выровнять новости по верхней границе ячеек, а даты — по нижней. Для этого используется дескриптор <COL>, расположенный внутри дескриптора <COLGROUP>. Этот дескриптор описывает параметры отдельного столбца, принадлежащего группе.

Какие параметры форматирования можно описывать с помощью дескриптора <COL>? Те же самые, что и с помощью дескриптора <COLGROUP>. И это логично: ведь дескриптор <COL> предназначен именно для переопределения свойств отдельных столбцов, входящих в группу <COLGROUP>.

Пусть в таблице первые две колонки должны быть выровнены вправо, а третья — посередине, причем все три колонки необходимо объединить в группу. Последующие три колонки также должны быть объединены в группу и иметь выравнивание, аналогичное первой группе.

Для решения этой задачи следует записать такой фрагмент HTML-кода:

<TABLE>

<COLGROOP>

<COL SPAN=2 ALIGN=RIGHT>

<COL ALIGN=CENTER>

<COLGROUP>

<COL SPAN=2 ALIGN=RIGHT>

<COL ALIGN=CENTER>

(данные для таблицы)

</TABLE>

В этом примере после тэга <COLGROUP> задаются настройки отдельных столбцов данной группы. При этом в тэге <COLGROUP> при необходимости могли бы быть заданы параметры выравнивания, значения которых распространяются на все столбцы данной группы. Значения параметров, заданные в тэге <COL>, переопределяют значения из тэга <COLGROUP>. Заметим, что в тэге <COLGROUP> в данном примере, в отличие от предыдущего, отсутствует параметр SPAN. Здесь его употребление бессмысленно, так как количество элементов в группе будет определяться следующими за тэгом <COLGROUP> тэгами <COL>. Поэтому любое заданное значение параметра SPAN тэга <COLGROUP> будет переопределено.

Поскольку область применения тэгов <COLGROUP> и <COL> ограничивается единственным браузером Microsoft Internet Explorer, то следует пользоваться ими с осторожностью. Удобство использования этих тэгов очевидно, но на практике большинство таблиц строится с использованием соответствующего параметра выравнивания ALIGN для каждой ячейки таблицы, где это необходимо, что значительно увеличивает объем исходного кода таблицы, однако обеспечивает возможность просмотра в любом браузере.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]