Таблиці в HTML-документах

Автор: Пользователь скрыл имя, 13 Февраля 2013 в 20:07, лабораторная работа

Описание работы

HyperText Markup Language (надалі HTML) - це мова гіпертекстової розмітки документа. У нашому випадку цим документом є web сторінка. Простіше кажучи, це мова для написання web сторінок. Читаючи код HTML, Ваш улюблений веб-браузер виводить на екран Вашого монітора вміст web сторінки. Ви запитаєте; «А що таке веб-браузер?». Це програма для перегляду web сторінок, якими є «Microsoft Internet Explorer", «Netscape Navigator», «Opera», «Mozila» та ін.

Содержание

Введення……………………………………………………………………………3
Елементи конструювання таблиць
Елемент TABLE………………………………………………………………..4
Напрямок в таблиці……………………………………………………………6
Заголовок таблиці: елемент CAPTION……………………………………….6
Групи рядів: елементи THEAD, TFOOT і TBODY…………………………..7
Групи стовпців: елементи COLGROUP і COL……………………………….9
Ряди: елемент TR………………………………………………………………15
Осередки: елементи TH і TD………………………………………………….16
Подання таблиць невізуальними ПА
Асоціювання заголовної інформації з осередками даних…………………..21
Категоризація осередків……………………………………………………....24
Алгоритм пошуку заголовної інформації…………………………………....28
Зразок таблиці………………………………………………………………….28
Висновок………………………………………………………………………….....32
Використана література………………………………………………………….....34

Работа содержит 1 файл

Таблиці в HTML-документах.docx

— 122.40 Кб (Скачать)

 

Підрахунок кількості  стовпців

Є два способи визначити  кількість стовпців в таблиці (пріоритет  за спаданням):

  1. Якщо елемент TABLE містить які-небудь елементи COLGROUP або COL, ПА повинні підраховувати кількість стовпців, підсумовуючи наступну інформацію:
  • в кожному елементі COL береться значення його атрибуту span (за замовчуванням 1).
  • в кожному елементі COLGROUP, що містить не менше одного елемента COL, ігнорується атрибут span елемента COLGROUP. В кожному елементі COL виконується перший крок.
  • в кожному порожньому елементі COLGROUP береться значення його атрибуту (значення за умовчанням 1).
  1. Якщо елемент TABLE не містить елементів COLGROUP або COL, ПА повинен базувати кількість стовпців на потрібному для рядів кількості. Кількість стовпців дорівнює кількості стовпців, вимагає для ряду з найбільшою кількістю стовпців, включаючи осередки, що охоплюють кілька стовпців. Кожен ряд з меншою кількістю стовпців заповнюється на кінці порожніми осередками. "Кінець" ряду залежить від напрямку таблиці.

Вважається помилкою, якщо таблиця містить елементи COLGROUP або COL, і два підрахунку не дають однакової кількості стовпців.

Після того, як ПА підрахував кількість стовпців в таблиці, він  може згрупувати їх в групи стовпців.

Наприклад, для кожної з  наступних таблиць два методи підрахунку стовпців повинні дати в  результаті по три стовпці кожен. Перші три таблиці можуть відображатися  частинами.

<TABLE>

<COLGROUP span="3"></COLGROUP>

<TR><TD> ...

...ряды...

</TABLE>

 

<TABLE>

<COLGROUP>

<COL>

<COL span="2">

</COLGROUP>

<TR><TD> ...

...ряды...

</TABLE>

 

<TABLE>

<COLGROUP>

<COL>

</COLGROUP>

<COLGROUP span="2">

<TR><TD> ...

...ряды...

</TABLE>

 

<TABLE>

<TR>

  <TD><TD><TD>

</TR>

</TABLE>

 

Підрахунок ширини стовпців

Автори можуть встановити ширину стовпців трьома методами:

Fixed

Фіксована ширина, визначається в пікселах (напр., width = "30"). Робить можливим відображення частинами.

Percentage

У відсотках (напр., width = "20%"). Процентне співвідношення на базі доступного горизонтального простору таблиці (між лівим і правим краями, включаючи  обтікання). Врахуйте, що цей простір  не залежить від самої таблиці, і  визначення у відсотках робить можливим відображення частинами.

Proportional

Пропорційне (напр., width = "3 *") посилається на частину горизонтального  простору, необхідного для таблиці. Якщо ширина таблиці задана фіксованим числом в атрибуті width елемента TABLE, ПА повинні відображати таблицю частинами навіть при наявності пропорційних стовпців.

Однак, якщо таблиця не має  фіксованої ширини, ПА повинен отримати всі дані таблиці, перш ніж він  зможе визначити горизонтальне  простір, необхідний для таблиці. Тільки після цього цей простір може бути розподілено пропорційно між  стовпцями.

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

Якщо виявиться, що ширина стовпців виявиться замалою для  відображення вмісту деяких осередків, ПА може обрати перемальовування таблиці.

Наступна таблиця містить 6 стовпців. Перший не входить в якусь  групу. Наступні три належать до першої певної групи, а два останніх - до другої групи стовпців. Ця таблиця  не може бути сформатував для виведення  частинами, оскільки вона містить специфікації пропорційної ширини стовпців і не має значень атрибуту width елемента TABLE.

Як тільки (візуальний) ПА отримає дані таблиці: все доступне горизонтальний простір буде розподілено  так:

 Спочатку ПА виділить  по 30 пікселів стовпцях один і  два.

 Потім резервується  мінімальний простір, необхідне  для стовпця три.

 Залишилося горизонтальний  простір ділиться на шість  рівних частин (оскільки 2 * + 1 * + 3 * = 6).

 Стовпець чотири отримали  дві (2 *) з цих частин, стовпець  п'ять - одну (1 *), а стовпець шість  - 3 частини (3 *).

<TABLE>

<COLGROUP>

   <COL width="30">

<COLGROUP>

   <COL width="30">

   <COL width="0*">

   <COL width="2*">

<COLGROUP align="center">

   <COL width="1*">

   <COL width="3*" align="char" char=":">

<THEAD>

<TR><TD> ...

...ряды...

</TABLE>

 

Ми встановили значення атрибута align в третій групі стовпців в "center". Усі клітинки кожного стовпця цієї групи успадковують це значення, але можуть перевизначити його. Фактично, останній COL робить саме це, визначаючи, що кожна клітинка в стовпці, яким він володіє, буде вирівняна по символу ":".

У наступній таблиці специфікація ширини стовпців дозволяє ПА форматувати  таблицю для виведення частинами:

<TABLE width="200">

<COLGROUP span="10" width="15">

<COLGROUP width="*">

   <COL id="penultimate-column">

   <COL id="last-column">

<THEAD>

<TR><TD> ...

...ряды...

</TABLE>

 

Перші 10 стовпців будуть шириною  по 15 пікселів кожний. Кожен з двох останніх стовпців отримає половину з решти 50 пікселів. Зверніть увагу, що елементи COL з'являються саме так, оскільки значення id може бути визначене для двох останніх стовпців.

Примітка. Хоча атрибут width елемента TABLE і не "не рекомендується", авторам слід використовувати таблиці стилю для специфікації ширини таблиці.

 

    1. Ряди: елемент TR

<!ELEMENT TR    - O (TH|TD)+   -- ряд таблицы -->

<!ATTLIST TR                                -- ряд таблицы --

  %attrs;                                             -- %coreattrs, %i18n, %events --

  %cellhalign;                                    -- горизонтальное выравнивание в ячейках --

  %cellvalign;                                    -- вертикальное выравнивание в ячейках --

  >

Початковий тег: необхідний, Кінцевий тег: не обов'язковий

 

Атрибути, визначені в  іншому місці

  • id, class (идентификаторы документа)
  • lang (язык), dir (направление текста)
  • title (заголовок элемента)
  • style (инлайн-стиль)
  • onclick, ondblclick,  onmousedown, onmouseup,  onmouseover, onmousemove,  onmouseout, onkeypress,  onkeydown, onkeyup (внутренние события)
  • bgcolor (цвет фона)
  • align, char, charoff, valign (выравнивание в ячейке)

 

Елемент TR діє як контейнер  для ряду елементів таблиці. Кінцевий тег може бути опущений.

Зразок таблиці містить  три ряди, кожен з яких починається  елементом TR:

<TABLE summary="This table charts the number of cups

                   of coffee consumed by each senator, the type

                   of coffee (decaf or regular), and whether

                   taken with sugar.">

<CAPTION>Cups of coffee consumed by each senator</CAPTION>

<TR> ...заголовочный  ряд...

<TR> ...1 ряд данных...

<TR> ...2 ряд данных...

...остальная часть  таблицы...

</TABLE>

    1. Комірки: елементи TH і TD

<!ELEMENT (TH|TD)  - O (%flow;)*       -- ячейка заголовочная|данных -->

 

<!-- Область видимости  проще, чем атрибуты заголовков  обычных таблиц -->

<!ENTITY % Scope "(row|col|rowgroup|colgroup)">

 

<!-- TH - для заголовков, TD - для данных, но для ячеек,

   работающих  и так, и так, используйте  TD -->

<!ATTLIST (TH|TD)                      -- ячейка заголовочная|данных --

  %attrs;                                           -- %coreattrs, %i18n, %events --

  abbr        %Text;         #ПРЕДПОЛАГАЕТСЯ -- аббревиатура для заголовочной ячейки --

  axis        CDATA       #ПРЕДПОЛАГАЕТСЯ -- список разделённых

      запятыми  относительных заголовков--

  headers     IDREFS    #ПРЕДПОЛАГАЕТСЯ  -- список id заголовочных ячеек --

  scope       %Scope;    #ПРЕДПОЛАГАЕТСЯ  -- область видимости заголовочных ячеек --

  rowspan     NUMBER       1        -- количество рядов, охваченных ячейкой --

  colspan     NUMBER        1        -- количество столбцов, охваченных ячейкой --

  %cellhalign;                          -- горизонтальное выравнивание в ячейках --

  %cellvalign;                          -- вертикальное выравнивание в ячейках --

  >

Початковий тег: необхідний, Кінцевий тег: не обов'язковий

 

Визначення атрибутів

headers = idrefs [CS]

Визначає список заголовних комірок, що надають заголовну інформацію для поточної комірки даних. Значенням  цього атрибут є список розділених пробілами імен осередків; ці осередки повинні бути іменувати шляхом установки  їх атрибутів id. Автори зазвичай використовують атрибут headers для того, щоб допомогти Невізуальні ПА представити заголовну інформацію про осередку даних (напр., заголовна інформація вимовляється до виведення даних комірки), але цей атрибут може також використовуватися разом з таблицями стилів.

scope = scope-name [CI]

Визначає набір осередків  даних, для яких поточна заголовна  осередок надає заголовну інформацію. Цей атрибут може використовуватися  замість атрибута headers, особливо в простих таблицях. Якщо встановлений, цей атрибут повинен мати одне з наступних значень:

  • row: поточна комірка надає заголовну інформацію для решти ряду, що містить її.
  • col: поточна комірка надає заголовну інформацію для решти стовпця, що містить її.
  • rowgroup: заголовна осередок надає заголовну інформацію для решти групи рядів, що містять її.
  • colgroup: заголовна осередок надає заголовну інформацію для решти групи стовпців, що містять її.

abbr = text [CS]

Цей атрибут повинен використовуватися  для представлення вмісту комірки  в скороченій формі і може виводитися ПА, якщо це зручно, замість вмісту комірки. Скорочені імена повинні бути короткими, оскільки ПА можуть відображати  їх повторно. Наприклад, голосові синтезатори  можуть виводити скорочені заголовки  до виведення вмісту цих осередків.

axis = cdata [CI]

Цей атрибут може використовуватися  для приміщення осередку в концептуальні  категорії, які можна представити  у вигляді осей в n-розмірному просторі. ПА можуть дати користувачам доступ до цих категорій (напр., користувач може запросити у ПА всі комірки, що належать до певних категорій, ПА може представити таблицю у формі  змісту і т.д.). Значенням цього  атрибуту є список розділених комами імен категорій.

rowspan = number [CN]

Визначає кількість рядів, охоплених поточною осередком. Значення за замовчуванням ("1").

("0") означає, що осередок  охоплює всі ряди розділу таблиці,  починаючи з поточного ряду  і закінчуючи останнім рядом  розділу (THEAD, TBODY або TFOOT), в якому осередок визначена.

colspan = number [CN]

Визначає кількість стовпців, охоплених поточною осередком. Значення за замовчуванням ("1").

("0") означає, що осередок  охоплює всі стовпці, починаючи  з поточного стовпця і закінчуючи  останнім стовпцем групи (COLGROUP), в якій осередок визначена.

nowrap [CI]

Не рекомендується. Якщо встановлений, цей булеві атрибут просить ПА скасувати автоматичне перенесення рядків в даній комірці. Таблиці стилів повинні використовуватись замість цього атрибута.

Примітка. При необережному використанні, цей атрибут може викликати появу занадто широких осередків.

Информация о работе Таблиці в HTML-документах