В идеальном случае HTML‑документ состоит из трех частей, в которых описывается следующая информация:
• данные о версии используемого HTML;
• заголовок документа;
• тело документа.
Выражение «в идеальном случае» означает то, что один или несколько элементов могут пропускаться: если HTML‑документ содержит хоть какой‑то текст, пусть без информации о версии, без заголовка и без явного указания тела документа, то браузер все равно отобразит информацию, содержащуюся в этом документе, при этом применяя к тексту еще и форматирование. Правда, в этом случае заведомо неизвестно, насколько исказится содержимое документа.
Ртак, полноценный (полный, стандартный) HTML‑документ должен содержать РІСЃРµ три указанные элемента структуры или хотя Р±С‹ РґРІР° последних элемента. Далее приводится пример простейшего HTML‑документа, содержащего РІСЃРµ указанные структурные элементы (пример 2.1).
Пример 2.1. Задание структуры HTML-документа
<!DOCTYPE HTML PUBLIC В«-//W3C//DTD HTML 4.01//ENВ»>
<HTML>
<HEAD>
<TITLE>HTML-документ</TITLE>
</HEAD>
<BODY>
<H1>Заголовок</H1>
<P>Первый абзац
<P>Второй абзац
</BODY>
</HTML>
2.1. Рнформация Рѕ версии HTML
Первая строка HTML‑документа содержит информацию об используемой версии языка HTML: 2.0, 3.0, 3.2, 4.0 и 4.01 (используется в данной книге). Здесь же задается, какое определение типа документа (DTD) должен использовать браузер при интерпретации содержимого документа. Для указания версии при использовании HTML 4.01 можно использовать одно из следующих определений типа документа:
•  – использовать строгое определение HTML версии 4.01, в которое не включаются нежелательные для версии 4.01 элементы и атрибуты, а также фреймы;
•  – применять переходное определение HTML версии 4.01, в которое включаются нежелательные для версии 4.01 элементы и атрибуты;
•  – использовать определение HTML версии 4.01, в которое включаются нежелательные для версии 4.01 элементы и атрибуты, а также фреймы.
В информации о версии языка также можно указать URI, откуда браузер может загрузить последнюю версию файла с DTD‑определением используемой версии HTML. Для трех указанных выше вариантов определений URI следующие (в том же порядке):
• ;
• ;
• .
Пример использования одного из приведенных URI:
<!DOCTYPE HTML PUBLIC В«-//W3C//DTD HTML 4.01//ENВ»
"http://www.w3.org/TR/html4/strict.dtd">
Рнформация Рѕ версии HTML, безусловно, должна использоваться РїСЂРё профессиональной разработке HTML‑документов. Далее будет рассказано еще РѕР± РѕРґРЅРѕРј СЃРїРѕСЃРѕР±Рµ задания версии HTML, который является нежелательным СЃ точки зрения использования чистого языка HTML 4.01, РЅРѕ РІСЃРµ же имеет место. Р’ большинстве примеров данной РєРЅРёРіРё версия HTML вообще РЅРµ указывается для того, чтобы РЅРµ загромождать HTML‑код строками, РЅРµ относящимися Рє рассматриваемым примерам.
Однако РїСЂРё создании документов, предназначенных для публикации РІ Рнтернете, следует обязательно позаботиться Рѕ включении определения версии HTML РІ документ, особенно если РІ нем используются сценарии (Р±СѓРґСѓС‚ рассмотрены РІ РіР». 12 Рё 13).
2.2. Рлемент HTML
Корневым элементом структуры HTML‑документа является одноименный элемент HTML. Его использование позволяет СЏРІРЅРѕ указать браузеру, что РёРј обрабатывается HTML‑код. Рлемент HTML содержит РІ себе РІСЃРµ остальные структурные части HTML‑документа, например HEAD Рё BODY, Рё задается РїСЂРё помощи парных тегов Рё . Р’СЃРµ, что находится между этими тегами, – есть HTML‑документ.
Теги и являются необязательными. В открывающем теге можно задать используемую версию HTML при помощи атрибута version. Например, при использовании HTML 4.01 можно написать так:
<HTML version = В«4.01В»>
Рто Рё есть второй вариант задания версии HTML. Правда, РїСЂРё использовании объявления типа документа задание версии РІ элементе HTML является излишним. РќР° текущем этапе изучения HTML РЅРµ стоит РѕСЃРѕР±Рѕ волноваться Рѕ том, правильно ли РІС‹ указываете версию HTML, ведь HTML‑документы нормально отображаются большинством современных браузеров без РІСЃСЏРєРѕРіРѕ указания версии HTML, также как Рё без указания атрибутов, которые все‑таки необходимо рассмотреть.
В элементе HTML можно также задать основной язык документа (атрибут lang) и направления текста (атрибут dir). Атрибут dir может принимать одно из двух значений: RTL или LTR (задают направление текста справа налево или слева направо соответственно). Для указания языка в атрибуте lang используется сокращенное стандартное обозначение языка, например: "ru", "en", "de" и т. д. Ниже приведены примеры задания языка и направления текста:
<HTML lang = В«ruВ» dir = LTR>
<HTML lang = "en">
Задавать атрибуты lang и dir совершенно не обязательно. Они доступны для большинства HTML‑элементов (не поддерживаются только для элементов APPLET, BASE, BASEFONT, BR, FRAME, FRAMESET, IFRAME, PARAM, SCRIPT).
Теперь, наконец, можно рассмотреть, как задаются наиболее важные элементы HTML‑документа – заголовок и тело документа.
2.3. Заголовок
В заголовке (его еще называют «шапкой») HTML‑документа содержатся сведения о документе: название (тема документа), ключевые слова (используются поисковыми системами), а также ряд других данных, которые не являются содержимым документа.
Рлемент HEAD
Заголовок HTML‑документа содержится в элементе HEAD. Для задания этого элемента используются парные теги
и . Все, что находится между двумя указанными тегами, относится к заголовку HTML‑документа. Теги и не являются обязательными, но все же лучше их указывать, чтобы можно было легко определить, что именно относится к заголовку HTML‑документа (браузер определит это автоматически, независимо от наличия тегов и ). В простых примерах книги элемент HEAD опускается, если заголовок документа содержит только элемент TITLE (информация об этом элементе приведена далее).Рассматриваемые далее элементы TITLE и META являются информативными элементами заголовка HTML‑документа. Они определяются внутри элемента HEAD (между его тегами).
<HEAD>
<TITLE>...</TITLE>
<META ...>
...
<META ...>
</HEAD>
Рлемент TITLE
Р’ самом простом случае РІ заголовке документа содержится только РѕРґРёРЅ элемент – TITLE. РћРЅ используется для задания названия HTML‑документа. Ртот элемент задается РїСЂРё помощи парных тегов
Название документа должно быть кратким, но информативным и должно адекватно отражать содержание документа, например:
<TITLE>Программирование на Java. Введение</TITLE>
<TITLE>Операторы языка C++</TITLE>
Рспользование тегов
Рлемент BASE
Рлемент BASE, появляющийся РІ заголовке HTML‑документа, позволяет задать базовый URI, относительно которого разрешаются РІСЃРµ относительные URI РІ документе.
Рлемент BASE задается одиночным тегом
<BASE href = В«D:\test\test.htmlВ»>
...
<IMG src = "image.gif">
При таком использовании элемента BASE, где бы ни был расположен открытый HTML‑документ, рисунок, задаваемый элементом IMG, будет загружаться из файла D:\test\image.gif.
Метаданные
В заголовке документа помещаются также некоторые важные данные, используемые браузерами и поисковыми системами, но в большинстве случаев не отображаемые, – метаданные. Задание метаданных представлено как задание значений переменным (иногда говорят про задание значений свойствам), имеющим определенные имена, осуществляемое с помощью HTML‑элемента META (элемент задается одиночным тегом ). При использовании элемента META обычно задают значения следующих атрибутов:
• name – имя переменной (значения чувствительны к регистру символов, по крайней мере, официально);
• content – значение переменной;
• lang – код языка, для которого действительно значение переменной; может быть задано несколько значений одной переменной для разных языков;
• http-equiv – применяется для указания браузеру дополнительных параметров по обработке HTML‑документа, значением атрибута является название параметра (в отличие от name, значения не чувствительны к регистру символов).
Перечисленные атрибуты обычно используются парами: name и content или http-equiv и content. Атрибут lang применяется, если дополнительно нужно указать значения атрибутов для различных языков.
Сначала будет рассмотрено использование пары name Рё content. Рта пара атрибутов позволяет задавать значения переменным, которые часто, РЅРѕ РЅРµ всегда используются поисковыми системами Рё РґСЂСѓРіРёРјРё сервисами Рнтернета: описание Рё авторство документа, ключевые слова Рё еще РјРЅРѕРіРѕ информации. Р’ табл. 2.1 приведены основные значения атрибута name, Р° также дана расшифровка возможных значений атрибута content РІ каждом случае.
Таблица 2.1. Значения атрибута name и соответствующие значения атрибута content
РќР° практике полезным оказывается задание переменной, содержащей СЃРїРёСЃРѕРє ключевых слов. Ведь именно этот СЃРїРёСЃРѕРє воспринимается поисковыми системами РїСЂРё РїРѕРёСЃРєРµ РїРѕ запросу пользователя. РџРѕ этой причине перед публикацией ваших творений РІ Рнтернете позаботьтесь Рѕ том, чтобы СЃРїРёСЃРѕРє состоял РёР· слов, наиболее часто используемых (или очевидных) РїСЂРё запросах РЅР° тему, соответствующую или близкую теме вашего документа.
При создании списка ключевых слов крайне удобно использование атрибута lang для указания различных наборов ключевых слов на различных языках (и для различных языков поиска). Например, как в следующем случае:
<META name = «Keywords» lang = «ru» content = «HTML, веб-дизайн, гипертекст, сайт, сайты ...»>
<META name = "Keywords" lang = "en" content = "HTML, web-design, hypertext, site, sites ...>
Можно, конечно, задать список одним единственным тегом сразу на всех нужных языках. Как удобнее – решать вам.
Теперь пришло время рассмотреть использование второй пары атрибутов: http-equiv Рё content. Рта пара значений, если говорить упрощенно, позволяет влиять РЅР° работу браузера. РљСЂРѕРјРµ того, РѕРЅР° может использоваться поисковыми системами. Р’ табл. 2.2 приведены некоторые распространенные значения атрибута http-equiv Рё описание соответствующих РёРј значений атрибута content.
Таблица 2.2. Значения атрибута http-equiv и соответствующие значения атрибута content
Напоследок остается только заметить, что использовать все приведенные значения атрибутов name и http-equiv необязательно. В большинстве случаев достаточно бывает ограничиться заданием ключевых слов и кодировки HTML‑документа.
2.4. Тело HTML-документа
Вся содержательная часть HTML‑документа находится в его теле (элемент BODY). Для определения этого элемента используются парные теги
и . Теги и не являются обязательными, но их наличие, как и в случае тегов и , значительно улучшает наглядность структурной организации HTML‑документа и позволяет четко отделить содержимое документа от заголовка.Все, что помещено между тегами
и , является содержимым документа, показываемым браузером пользователю. В простейшем случае это может быть просто текст без всякого дополнительного оформления. Ниже приведен список наиболее часто используемых атрибутов элемента BODY:• background – URI, указывающий расположение изображения для фона (обычно берется небольшое изображение, которое размножается для заполнения фона всего документа);
• bgcolor – цвет фона HTML‑документа;
• text – цвет шрифта документа;
• link – цвет непосещенных гиперссылок;
• vlink – цвет посещенных гиперссылок;
• alink – цвет гиперссылок при выборе их пользователем (при нажатии Enter произойдет переход по такой гиперссылке).
Все атрибуты, позволяющие задавать цвет (не только элемента BODY, но прочих элементов, которые будут рассмотрены далее), имеют тип %Color. Значения таких атрибутов могут задаваться шестнадцатеричными числами с символом # в начале каждого числа, например:
bgcolor = В«#FF0005В»
РџСЂРё задании цвета данным СЃРїРѕСЃРѕР±РѕРј следует помнить, что числом задается цвет РІ RGB‑формате. Рто значит, что первые РґРІР° символа задают интенсивность красного цвета РѕС‚ 0 РґРѕ FF (255 РІ десятичной системе счисления), третий Рё четвертый символы – интенсивность зеленого цвета, Р° РґРІР° последних – интенсивность синего цвета. Р’ данном примере интенсивности красного, зеленого Рё синего цветов равны FF, 0 Рё 5 соответственно.
Кроме того, атрибутам задания цвета можно присваивать предопределенные идентификаторы некоторых наиболее часто употребляемых цветов. Список этих названий и их численные значения приведены в табл. 2.3.
Таблица 2.3. Рдентификаторы Рё значения часто используемых цветов
Для закрепления всего, что было описано в этой главе, можно рассмотреть простой пример.
Данный пример базируется на уже полученных знаниях (на теги задания гиперссылок и теги
можете пока не обращать внимания, так как важен только цвет гиперссылок и текста) (пример 2.2).
Пример 2.2. Пример задания названия документа и параметров цвета
<HTML>
<TITLE>Пример задания цветов в элементе BODY</TITLE>
<BODY
background = "2.2.html-files/back.jpg"
text = "black"
link = "#0080FF"
vlink = "blue"
alink = "navy">
Обычный неформатированный текст должен отображаться черным цветом
<P><A HREF = "ref1">Непосещенная гиперссылка (голубой цвет)</A>
<P><A HREF = "ref2">Посещенная гиперссылка (синий цвет)</A>
<P><A HREF = "ref3">Выделенная гиперссылка (темно-синий цвет)</A>
</BODY>
</HTML>
После обработки приведенного примера браузером получится документ, который показан на рис. 2.1.
Рис. 2.1. Результат обработки HTML-текста примера
В данном примере использовался неформатированный текст. Но HTML на то и HTML, чтобы всячески способствовать улучшению восприятия содержимого текста и наделять обычный текст возможностями навигации. В последующих главах будут подробно рассмотрены форматирование текста, вставка в него иллюстраций и прочие замечательные возможности HTML.