Классификация элементов
Способы, которыми теги HTML могут сочетаться, определяются терминами элементов и их классификацией. Гораздо удобнее определить, например, что элемент H1 может содержать только текстовые элементы, чем давать длинный список подходящих элементов, особенно, если учесть, что один и тот же список должен появляться во многих контекстах, и этот список может изменяться при добавлении новых текстовых элементов к будущим версиям HTML.
Элементы HTML можно классифицировать на три основные категории:
- заголовочные элементы, т.е. элементы, используемые в элементе HEAD ("шапка", заголовок) и содержащие информацию о документе в целом: TITLE, ISINDEX, BASE, META, LINK, SCRIPT, STYLE
- блоковые элементы, включающие элементы, которые специфицируют структуру документа, например, разделение на части и параграфы (абзацы): H1, H2, H3, H4, H5, H6, ADDRESS, и элементы P, UL, OL, DL, PRE, DIV, CENTER, BLOCKQUOTE, FORM, ISINDEX, HR, TABLE
- текстовые элементы. Текстовыми элементами могут быть:
- простой текст, возможно содержащий escape последовательности (например, &)
- выражения разметки: EM, STRONG, DFN, CODE, SAMP, KBD, VAR, CITE
- разметка шрифта: TT, I, B, U, STRIKE, BIG, SMALL, SUB, SUP
- специальные элементы: A, IMG, APPLET, FONT, BASEFONT, BR, SCRIPT, MAP
- элементы формы: INPUT, SELECT, TEXTAREA
Любой текстовый элемент, включая простой текст, может при необходимости появиться везде - путем задания абзаца (параграфа) (P элемент).
Правило "большого пальца", которое может помочь в запоминании того, какой элемент - блоковый, а какой - текстовый: блоковые элементы завершают абзац, текстовые - нет.
Заметьтe: часто блоковые элементы могут содержать как текстовые, так и другие блоковые элементы, например, блоки могут быть вложенными. Текстовые элементы также могут быть вложенными. Но текстовые элементы не могут включать блоковые элементы. Например, выражение
<CITE><H3>Origin of Species</H3></CITE>
неверно (так как CITE - текстовый элемент, а H3 - блоковый элемент) и к тому же нелогично (Вы не можете придать заголовку, как структуре, значение цитаты, так ведь?). Тогда как запись
<H3><CITE>Origin of Species</CITE></H3>
была бы правильной, хотя отдельные броузеры воспринимают это с трудом. Еще одни пример: не заголовок (headings) вставляется в атрибут NAME тега A, а наоборот. Так же было бы неверно иметь завершение абзаца (тег P) в пределах, например, элемента STRONG. Хотя некоторые броузеры понимают это, семантика этого сомнительна, и Вы должны были бы использовать отдельные начальные и конечные теги STRONG в пределах каждого абзаца (если Вы действительно желаете выделить такие большие порции текста!).
|
|