- •Лекции по интернет-программированию Оглавление
- •Общее представление
- •Браузеры
- •Перспективы
- •Структура html-документа
- •Синтаксис тегов
- •Атрибуты
- •Тип элемента документа
- •Структура элемента
- •Примечания
- •Варианты doctype для html 4.01
- •Варианты doctype для html 5
- •Браузерные войны
- •Структура html-документа
- •Варианты doctype для html 4.01
- •Doctype для html 5
- •Основные элементы («теги»)
- •Гиперссылки
- •Текстовые блоки
- •Форматирование текста
- •Объекты
- •Изображения
- •Таблицы
- •Символы
- •Названия цветов
- •Основные символы
Структура элемента
В SGMLи основанных на нем языках (HTMLверсий 2—4.01, языки семействаXMLи т.д.) элементы должны быть строго вложенными друг в друга, «перехлест» элементов недопустим[6]:
неправильно: <a><b></a></b>
правильно : <person><i>Имя Фамилия</i></person>
Распространенное заблуждение, что SGML и HTML разрешают «перехлест» элементов, основанно на нарушающем стандарты[7]поведении старых версийбраузеров, пытавшихся «исправлять» ошибки разметки по собственным алгоритмам.
Однако SGML (и HTML) допускают применение ряда сокращенных синтаксических конструкций, в том числе необязательные (опциональные) закрывающие и даже открывающие теги (автоматически достраиваемые при разборе документа на основе указанной схемы документа и текущего контекста). В XML, напротив, все теги должны быть открыты и закрыты явным образом, что значительно упрощает алгоритм его разбора и снижает требования к аппаратному обеспечению для него.
Примечания
↑Написание через е (а не э) регламентировано орфографическим словарем, см. [1].
Элементы могут быть пустыми, то есть не содержащими никакого текста и других данных (например, тег перевода строки<br>). В этом случае обычно не указывается закрывающий тег. Кроме того, элементы могут иметьатрибуты, определяющие какие-либо их свойства (например, размер шрифта для элементаfont). Атрибуты указываются в открывающем теге. Вот примеры фрагментов HTML-документа:
<strong>Текст между двумя тегами — открывающим и закрывающим.</strong>
<a href="http://www.example.com">Здесь элемент содержит атрибут href.</a>
А вот пример пустого элемента: <br>
Регистр, в котором набрано имя элемента и имена атрибутов, в HTML значения не имеет (в отличие от XHTML). Элементы могут быть вложенными. Например, следующий код:
<b>
Этот текст будет полужирным,
<i>а этот - ещё и курсивным</i>
</b>
даст такой результат:
Этот текст будет полужирным, а этот — ещё и курсивным
Кроме элементов, в HTML-документах есть и сущности(англ.entities)—«специальные символы». Сущности начинаются с символаамперсандаи имеют вид&имя;или&#NNNN;, гдеNNNN— код символа вЮникодев десятичной системе счисления.
Например, ©— знакавторского права(©). Как правило, сущности используются для представления символов, отсутствующих в кодировке документа, или же для представления «специальных» символов:&— амперсанда (&),<— символа «меньше» (<) и>— символа «больше» (>), которые некорректно записывать «обычным» образом, из-за их особого значения в HTML.
Подробнее по этой теме см.: Элементы HTML.
Подробнее по этой теме см.: Википедия:Специальные символы.
Каждый HTML-документ, отвечающий спецификации HTML какой-либо версии, должен начинаться со строки объявления версии HTML <!DOCTYPE…>, которая обычно выглядит примерно так:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
Если эта строка не указана, то добиться корректного отображения документа в браузере становится труднее.
Далее обозначается начало и конец документа тегами <html>и</html>соответственно. Внутри этих тегов должны находиться теги заголовка (<head></head>) и тела (<body></body>) документа.