ОсновноеRadiotalkПользовательское
Программирование
6   •   Посмотреть все темы

Структура HTML-документа

 

2020
Don-A @Don-A
С чего начинается HTML


Для того, чтобы текстовый файл превратился в HTML-файл, поменять его расширение с ".txt" на ".html" недостаточно. Надо соблюсти "правило первой строки":

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


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">


Эта строка поможет браузеру определить, как правильно интерпретировать данный документ. В данном случае мы говорим браузеру, что HTML соответствует международной спецификации версии 3.2, которая хоть и не отличается новизной, но, в отличие от более поздних версий, является полноценным, широко распространенным стандартом без каких-либо неопределенности. Как видно из примера, самый короткий html-документ состоит буквально из одной строки.

Пример самого короткого HTML-документа:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

С чего начинается работа

На самом деле одной строкой дело не обходится. После объявления версии и типа документа необходимо обозначить его начало и конец. Это делается с помощью тега-контейнера <HTML>. Необходимо отметить, что любой HTML-документ открывется тегом <HTML> и им же закрывается.

Затем, между тегами <HTML> и </HTML> следует разместить заголовок и тело документа. Вот и все! Начало положено – вы получили прекрасную заготовку. Вот как должен выглядеть ваш базовый HTML-файл перед началом работы:

Правильный пример самого короткого HTML-документа:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>Заголовок документа</TITLE>
</HEAD>
<BODY>
Текст документа
</BODY>
</HTML>

Разжевать?

Если приведенный выше пример пояснить схематически, получится следующее:



Из схемы видно, что документ состоит из двух основных блоков – "заголовка" и "тела документа". Заголовок определяется с помощью элемента HEAD, а тело – элементом BODY.

Заголовок содержит "техническую" информацию о документе, хотя чаще всего используется только для обозначения его названия (см. элемент TITLE).

Тело документа – святая святых. Именно в нем находится все то, что отображается на странице: текст, картинки, таблицы. Соответственно, делаем вывод: большинство ваших HTML-экспериментов будет проводиться в пространстве между тегами <BODY> и </BODY>

Размещение заголовка в теле документа (или наоборот) совершенно недопустимо. Сначала закрываем заголовок </HEAD>, и лишь затем открываем тело <BODY>.

6600
Александр @admiral
HEAD , TITLE , BASE , STYLE by Battle_[Boy]

HEAD

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

Пример:
<HTML>
<!-- Начинаем заголовок... -->
<HEAD>
<title>Справочник по HTML</title>
</HEAD>
<!-- ...кончили. Дальше пошло тело документа -->

<BODY>
Текст документа
</BODY>

</HTML>

______________

TITLE

Определяет имя всего документа. Имя, как правило, отображается в заголовке окна браузера. Данный элемент обязателен для любого HTML-документа и может быть указан не более одного раза.

...
<HEAD>
<TITLE>Руководство по эксплуатации</TITLE>
</HEAD>
...

______________________

BASE

Указывает базовый адрес текущего документа (URL), который станет отправной точкой для расчета относительных адресов внутри документа. Элемент не имеет конечного тега. Обязательно присутствие хотя бы одного из атрибутов.


Атрибуты:

HREF – определяет базовый адрес (URL) текущего документа.

TARGET – определяет имя фрейма, которое будет использоваться в гиперссылках по умолчанию. Это может вам пригодиться, если вы хотите открывать все ссылки документа в другом фрейме.

Пример:
<HEAD>
<!-- Пусть браузер думает, что находится по адресу : -->
<BASE HREF="http://www.igf.ru/other/index.html">
<TITLE>Руководство по эксплуатации</TITLE>
</HEAD>
...
<!-- А теперь создадим относительную ссылку на документ -->
<!-- ********** -->
<A HREF="../list.html">Список</A>
...

___________

STYLE
Используется для вставки в документ таблицы стилей (CSS – Cascade Style Sheet).

Атрибуты:

TYPE – обязательный атрибут. Определяет MIME-тип вставляемого блока стилей. Как правило, значением этого атрибута является "text/css".

TITLE – определяет имя создаваемой таблицы стилей. Необходим, если вы собираетесь использовать несколько элементов STYLE в одном документе. В этом случае браузер должен спросить пользователя, какой из предложенных стилей будет применен к документу.

Пример:
<HEAD>
<TITLE>Пример использования таблицы стилей</TITLE>
<!-- Втыкаем табличку стилей -->
<STYLE TYPE="text/css" TITLE="Cool table">
<!--
A {text-decoration : none;}
P {color : blue; font-size : 12pt; font-family : Arial;}
H1 {color : red; font-size : 18pt;}
-->
</STYLE>
<!-- ... кончили втыкать -->
</HEAD>

Примечания:
Практически все популярные браузеры игнорируют атрибут TITLE, поэтому можете его не использовать. А жаль, задумка-то была неплохая...

6600
Александр @admiral
LINK by Battle_[Boy]

Элемент LINK описывает взаимосвязь документа с другими документами на сайте, указывая его место в иерархической структуре сайта. Элемент не имеет конечного тега. В заголовке может содержаться несколько элементов LINK.

Атрибуты:
HREF – определяет URL объекта.

REL – определяет тип взаимосвязи текущего документа с объектом, определенным атрибутом HREF. Возможные значения:

stylesheet – указывает на файл, содержащий таблицу стилей (CSS) для текущего документа. Браузер загрузит css-файл с указанного в атрибуте HREF адреса и применит его к текущему документу (см. также элемент STYLE)
home – указывает на заглавную страницу вашего сайта
toc, contents – указывают на файл, содержащий оглавление данного документа.
index – указывает на файл, содержащий информацию для индексного поиска по текущему документу.
glossary – указывает на файл, содержащий перечень терминов, относящихся к текущему документу.
copyright – указывает на страницу сайта, в которой говорится о его создателях, авторских правах и т.п.
up, parent – указывает на "родительскую" страницу (документ, стоящий на ступеньку выше в иерархической структуре вашего сайта).
child – указывает на "дочернюю" страницу (документ, стоящий на ступеньку ниже в иерархической структуре вашего сайта).
next – указывает на следующую страницу в последовательности документов (напр. следующую страницу электронного каталога, документации или словаря).
previous – указывает на предыдущую страницу в последовательности документов.
last, end – указывает на последнюю страницу в последовательности документов.
first – указывает на первую страницу в последовательности документов.
help – указывает на страницу с подсказкой (напр. по навигации по вашему сайту).

TYPE – определяет MIME-тип для объекта, указанного в атрибуте HREF.

Пример 1:
<HEAD>
<TITLE>Элемент DIV</TITLE>
<LINK REL="HOME" TITLE="HTML-справочник" HREF="index.html">
<LINK REL="UP" TITLE="Текстовые блоки" HREF="textblocks.html">
<LINK REL="PREVIOUS" TITLE="Элемент P" HREF="p.html">
<LINK REL="NEXT" TITLE="Элемент ADDRESS" HREF="address.html">
</HEAD>

Пример 2:
<HEAD>
<TITLE>Полдневье</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="style.css">
</HEAD>

Примечаний:
Элемент LINK, к сожалению, используется web-мастерами довольно редко, чаще всего только для внедрения CSS из отдельного файла. Почти все браузеры игнорируют информацию о положении документа в структуре сайта – эта информация интересна только индексирующим роботам поисковых систем.

6600
Александр @admiral
Списки UL, OL, LI, MENU, DIR, DL, DT, DD by Battle_[Boy]

UL

Unsorted List

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

Пример:
<UL>
<LI> Первый пункт списка </LI>
<LI> Второй пункт списка </LI>
<LI> Третий пункт списка </LI>
</UL>

_____________________________
OL


Ordered List


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

Атрибуты:


START – определяет первое число, с которого начинается нумерация пунктов. (только целые числа)

TYPE – определяет стиль нумерации пунктов. Может иметь значения:

"A" – заглавные буквы A, B, C ...
"a" – строчные буквы a, b, c ...
"I" – большие римские числа I, II, III ...
"i" – маленькие римские числа i, ii, iii ...
"1" – арабские числа 1, 2, 3 ...

По умолчанию <UL TYPE="1">.

Пример:
<OL TYPE="I" START="2">
<LI> Пункт два </LI>
<LI> Пункт три </LI>
<LI> Пункт четыре </LI>
</OL>

_________________

LI

List Item

Создает пункт в списке. Располагается внутри элементов OL или UL.

Атрибуты:

VALUE – изменяет порядок нумерации элементов списка. Используется только если элемент LI находится внутри элемента OL. В качестве значения указывается порядковый номер элемента.

Пример:
<OL TYPE="A" START="2">
<LI> Пункт, озаглавленный буквой B. </LI>
<LI VALUE="6"> Пункт, озаглавленный буквой F. </LI>
<LI> Пункт, озаглавленный буквой G. </LI>
</OL>

Примечания:

Некоторые разработчики употребляют LI вне элементов OL и UL, объясняя это тем, что браузеры и так нормально справятся с отображением списка. Это неверно, коллеги, почитайте спецификацию!

Согласно официальной рекомендации консорциума W3C закрывающий тег </LI> писать не обязательно. По этому поводу скажу следующее: хоть HTML и не является языком программирования, у вас, как и у всякого хорошего программиста, должен быть свой стиль написания кода. Кто-то будет писать </LI>, кто-то не будет – это не так уж и важно. Главное, чтобы вы однажды определились и не изменяли своему решению.

_____________
MENU, DIR
Menu, Directory List

Данные теги предназначены для создания неупорядоченных списков, подобных UL. Эти элементы не вошли в спецификацию HTML 4.0, однако браузеры могут распознавать их в целях обратной совместимости. Авторам же рекомендуется использовать вместо MENU и DIR элемент UL .

____________
DL

Definition List

Открывает и закрывает список определений (терминов и их описаний). Определения задаются с помощью элементов DT и DD.

Атрибуты:

COMPACT
– включает режим "компактного" отображения списка. Удобно использовать, если список определений очень велик. Данный атрибут является флагом и не требует присвоения значения.

Пример:
<DL COMPACT>
<DT>Жапура<DD>Река в Колумбии и Бразилии
<DT>Зайцы<DD>Семейство млекопитающих отряда зайцеобразных
...
</DL>

________________
DT

Definition Term

Создает термин в списке определений внутри элемента DL .

_______________
DD
Definition Description

Cоздает определение термина внутри элемента DL .