Спецификация HTML 4.01, рекомендации W3C от 24 декабря 1999 года
2 Введение в HTML 4
2.1 Что такое World Wide Web?
World Wide Web (Web)\Всемирная паутина это сеть информационных ресурсов. Web использует три механизма, делающих эти ресурсы доступными максимально возможной аудитории:
- Единообразная схема именования размещения ресурсов в Web (напр., URI).
- Протоколы для доступа к именованным ресурсам Web (напр., HTTP).
- Гипертекст для быстрой навигации по ресурсам (напр., HTML).
Связи этих механизмов станут очевидными после изучения данной спецификации.
2.1.1 Введение в URI
Каждый доступный на Web ресурс - документ HTML, рисунок, видеоклип, программа и т д. - имеет адрес, который может быть кодирован как Universal Resource Identifier\Универсальный идентификатор ресурса, или "URI".
URI обычно состоят из трех частей:
- Схема именования механизма, используемого для доступа к ресурсу.
- Имя машины - владельца (хоста) ресурса.
- Имя самого ресурса, даваемое как путь/path.
Рассмотрите URI страницы Technical Reports на сайте W3C:
http://www.w3.org/tr
Этот URI можно прочитать так: это документ, доступный по протоколу HTTP (см. [RFC2616]), находящийся на машине www.w3.org, доступный в пути "/tr". Другие схемы именования, которые Вы можете встретить в документах HTML, включают "mailto" для email (электронной почты) и "ftp" для FTP.
Вот другой URI. Этот ссылается на почтовый ящик пользователя:
...здесь какой-либо текст... Для комментариев высылайте, пожалуйста, email по адресу <A href="mailto:joe@someplace.com">Владимиру Ульянову</A>.
Примечание. Большинство читателей, наверное, знакомы с термином "URL" и не знакомы с термином "URI". URL образуют подраздел более общей схемы именования - URI.
2.1.2 Идентификаторы фрагментов документа (закладки)
Некоторые URI ссылаются на место внутри ресурса. URI этого типа заканчиваются знаком "#", после которого следует идентификатор якоря (называемый идентификатор фрагмента). Например, вот URI, указывающий на закладку с названием section_2:
http://somesite.com/html/top.html#section_2
2.1.3 Относительные URI
Относительные URI не содержат информацию о схеме именования. Их "путь" обычно ссылается на ресурс на той же машине, где находится и текущий документ. Относительные URI могут содержать компоненты относительного пути (например, ".." - на один уровень выше в иерархии пути), а также закладки.
Относительный URI
расширяется до
полного URI с использованием базового URI.
К примеру, предположим, что у нас есть базовый
URI "http://www.acme.com/support/intro.html".
Относительный URI в следующей разметке для
перехода по гиперссылке:
<A href="suppliers.html">Suppliers</A>
будет расширен до полного URI "http://www.acme.com/support/suppliers.html", а относительный URI для рисунка в следующей разметке:
<IMG src="../icons/logo.gif" alt="logo">
будет расширен до полного URI "http://www.acme.com/icons/logo.gif".
В HTML URI используются для:
- ссылки на другой документ или ресурс (см. элементы A и LINK);
- ссылки на внешнюю таблицу стилей или сценарий/скрипт (см. элементы LINK и SCRIPT);
- включения в страницу рисунка, объекта или аплета (см. элементы IMG, OBJECT, APPLET и INPUT);
- создания карт изображений (см. элементы MAP и AREA);
- отправки формы (см. FORM);
- создания многооконного документа - фрэймов (см. элементы FRAME и IFRAME);
- цитирования внешней ссылки (см. элементы Q, blockquote, INS и DEL).;
- ссылки на соглашения по метаданным, описывающим документ (см. элемент HEAD).
Прочтите также раздел о типе URI.
2.2 Что такое HTML?
Для публикации информации и ее глобального распространения необходим универсальный язык типа основного всеобщего языка, который потенциально понятен всем компьютерам. Таким языком, используемым в World Wide Web, является HTML (от HyperText Markup Language/Язык Гипертекстовой Разметки).
HTML дает авторам средства для того, чтобы:
- публиковать online-документы с оглавлением, текстом, таблицами, списками, фотографиями и т.д.;
- запрашивать online-информацию, переходя по гиперссылкам, нажимая кнопки;
- создавать формы для взаимодействия с удаленным сервисом, для поиска информации, создания архивов, продажи товаров и т д.;
- включать таблицы данных, видео и аудиоклипы и другие приложения прямо в документы.
2.2.1 Краткая история HTML
HTML был первоначально разработан Tim Berners-Lee как CERN и популяризован браузером Mosaic, разработанным NCSA. В течение 90х гг. он буквально расцвел в связи с бурным развитием Web. В это время HTML развивался разными путями. Web зависит от соглашений между создателями документов и провайдерами услуг. Это является причиной совместной работы над HTML.
HTML 2.0 (ноябрь 1995, см. [RFC1866]) был создан под эгидой Internet Engineering Task Force (IETF) для кодирования в конце 1994 г.. HTML+ (1993) и HTML 3.0 (1995, см. [HTML30]) представляли собой более "навороченные" версии HTML. Несмотря на то, что консенсус никогда не достижим в дискуссиях о стандартах, эти проекты вели к обобщению большого объема новых возможностей. Усилия World Wide Web Consortium's HTML Working Group по кодификации практических наработок в 1996 г. выразились в появлении HTML 3.2 (январь 1997, см. [HTML32]). Изменения, сделанные в HTML 3.2 суммированы Приложении A.
Большинство было согласно с тем, что документы HTML должны хорошо работать на различных платформах и в различных браузерах. Достижение универсальности уменьшает затраты провайдеров, поскольку они должны создавать документы одной версии языка. Если это не будет сделано, увеличится риск того, что Web будет развиваться во множестве несовместимых форматов, уменьшая коммерческий потенциал Web для всех участников.
Каждая версия HTML пытается добиться большего согласия среди участников этой игры так, чтобы затраты, сделанные провайдерами информации, не оказались бесполезными и чтобы их документы не стали через короткое время "нечитабельными".
HTML был разработан в расчете на то, что все виды устройств смогут получить информацию на Web: PC графическими дисплеями различного разрешения и глубины цвета, сотовыми телефонами, переносными устройствами, разговорными устройствами, компьютерами с высокой и низкой тактовой частотой и так далее.
2.3 HTML 4
HTML 4 расширяет HTML механизмами таблиц стилей, сценариев, фрэймов, внедренных объектов, улучшенной поддержкой текста левого и правого направлений, сложными таблицами и улучшениями в формах, увеличением доступности для людей с физическими недостатками.
В HTML 4.01 сделан пересмотр HTML 4.0, исправлены ошибки и внесены некоторые изменения по сравнению с предыдущей версией.
2.3.1 Интернационализация
Эта версия HTML была разработана при помощи экспертов в вопросах интернационализации так, чтобы документы могли быть написаны на любом языке и переданы в любую точку планеты. Это было сделано с участием [RFC2070], тех, кто имеет отношение к интернационализации HTML.
Важным этапом стало принятие стандарта ISO/IEC: 10646 (см. [ISO10646]) как набора символов для документа HTML. Это самый обобщенный мировой стандарт, содержащий решения по вопросам представления международных символов, направления текста, пунктуации и других вопросов языка.
В данный момент HTML предоставляет поддержку различных человеческих языков в документах. Это позволяет применять качественную индексацию документы для машин поиска, высококачественную типографскую печать, лучшую конверсию текст-речь и т.д.
2.3.2 Доступность
Поскольку сообщество Web разрастается, и его члены различны по своим возможностям и уровню, решающим становится соответствие базовых технологий специфическим задачам Web. HTML разработан так, чтобы сделать страницы Web более доступными людям с физическими недостатками. Развитие HTML 4, вызванное проблемой обеспечения доступности, включает в себя:
- большее разделение структуры и представления документа продвижением таблиц стилей вместо элементов и атрибутов представления HTML;
- доработка форм, добавление символов быстрого доступа, возможность семантически группировать элементы управления (ЭУ) и опции SELECT, активные лэйблы;
- возможность разметки текстового описания включенных объектов (элементом OBJECT);
- новый механизм клиентских карт изображений (элемент MAP), позволяющий авторам интегрировать изображения и гиперссылки;
- требование установки альтернативного текста для изображений для элемента IMG и карт изображений для элемента AREA;
- поддержка атрибутов title и lang для всех элементов;
- поддержка элементов ABBR и ACRONYM;
- широкий круг целевых носителей информации (tty, по Брайлю и т.п.) для использования с таблицами стилей;
- доработанные таблицы, заголовки, группы столбцов и механизмы, облегчающие невизуальное восприятие;
- полное описание таблиц, изображений фрэймов и т.д.
Авторы, разрабатывающие страницы с учетом их доступности, не только заслуживают благодарности, но получат также и другое преимущество: хорошо проработанные документы HTML с разделением структуры и представления в будущем легче будут адаптироваться к новым технологиям.
Примечание. О дизайне доступных документов HTML см. [WAI].
2.3.3 Таблицы
Новая модель таблиц HTML базируется на [RFC1942]. Авторы имеют теперь больший контроль над структурой и внешним видом (напр., группы столбцов). Возможность рекомендовать ширину столбцов дает возможность ПА отображать таблицы частями (по мере загрузки), а не дожидаться получения всей таблицы целиком.
Примечание. Некоторые утилиты для создания документов HTML широко используют таблицы для форматирования, что может легко привести к проблемам с доступностью документов.
2.3.4 Составные документы
HTML предлагает стандартный механизм внедрения объектов приложений в документы HTML. Элемент OBJECT (вместе со своими более специализированными предшественниками IMG и APPLET) предоставляет механизм включения в документ изображений, видео, звука, математических выражений, специализированных приложений и других объектов. Авторам предлагается также устанавливать иерархию альтернативного представления для ПА, не поддерживающих какие-либо виды специального представления.
2.3.5 Таблицы стилей
Таблицы стилей упрощают разметку HTML и снимают значительную долю нагрузки на HTML в вопросах представления документов. Они дают и авторам, и ПА контроль над представлением документов - шрифты, выравнивание, цвет и т.п.
Стилевая информация может быть определена для конкретного элемента или для группы элементов. Стилевая информация может быть установлена в документе HTML или во внешней таблице стилей.
Механизм ассоциации таблицы стилей с документом не зависит от языка таблицы стилей.
До появления таблиц стилей авторы имели
ограниченный контроль над представлением
документа. HTML 3.2 включал несколько
атрибутов и элементов, позволявших
управлять выравниванием, размером шрифта и
цветом текста. Авторы также использовали
таблицы и изображения как средство
форматирования вывода страниц.
Относительно много времени занимает
обновление пользователями своих браузеров,
и это означает, что постепенно новые
возможности начнут широко использоваться.
Одновременно, поскольку таблицы стилей
предлагают более совершенный механизм
представления, World Wide Web Consortium осуществляет
постепенный отход от многих элементов и
атрибутов представления документов HTML. В
этой спецификации элементы и атрибуты "риска"
отмечены как "не рекомендуемые". Они
сопровождаются примерами того, как добиться
того же эффекта применением других
элементов или таблиц стилей.
2.3.6 Сценарии (скрипты)
С помощью сценариев авторы могут
создавать динамические Web-страницы (напр.,
"умные формы", которые реагируют на их
заполнение пользователем) и использовать HTML
как средство создания сетевых приложений.
Механизм включения скриптов в документ HTML
не зависит от языка скриптов.
2.3.7 Печать
Иногда авторам необходимо облегчить пользователям печать сложных документов. Если документы являются частью более объемной работы, соотношения между ними могут быть описаны с использованием элемента HTML LINK или W3C's Resource Description Framework (RDF) (см. [RDF10]).
2.4 Создание документов HTML 4
Мы рекомендуем авторам и разработчикам рассмотреть следующие общие принципы при работе с HTML 4.
2.4.1 Разделение структуры и представления
HTML имеет корни в SGML, который всегда был языком спецификации структурной разметки. Поскольку HTML уже достаточно развился, все больше его элементов представления и атрибутов заменяются другими механизмами, в особенности - таблицы стилей. Опыт показывает, что отделение структуры документа от его представления уменьшает стоимость обслуживания на основе широкого спектра платформ, носителей и т.д. и облегчает обновление документов.
2.4.2 Предусматривайте универсальность доступа к Web
Чтобы сделать Web доступным каждому, особенно людям с физическими недостатками, авторы должны учитывать, как их документы будут выглядеть на различных платформах: речевых браузерах, устройств чтения по системе Брайля и т.п. Мы не рекомендуем авторам ограничивать себя творчески, необходимо только предусмотреть альтернативные возможности представления документа. HTML предоставляет несколько механизмов для этого (напр., атрибуты alt, accesskey и т.п.)
В то же время, авторы должны всегда помнить, что их документы доступны для широкой аудитории, для компьютеров разной конфигурации. Для того, чтобы документы интерпретировались корректно, авторы должны включать в свои страницы информацию о языке и направлении текста, о кодировке и других объектах интернационализации.
2.4.3 Помогать пользовательским агентам (ПА) показывать содержимое частями
Будьте аккуратны при создании таблиц и
использовании новых возможностей
HTML 4.
Авторы могут помочь ПА отображать
документы быстрее.
Авторы могут узнать, как
создавать таблицы для отображения частями (см.
элемент table).
Разработчики должны прочесть заметки о таблицах в
приложении об алгоритме вывода частями.