Синтаксис языка
Расширяемый язык разметки гипертекстов (XHTML) является простым языком, лёгким в написании и последующем анализе.
Пробелы
В XHTML все пробелы, табуляция и начала новых строк (white space) преобразуются в обычный пробел.
То есть, не имеет значения, как писать код — «в столбик» или «в строчку».
Например, два следующих фрагмента в XHTML идентичны:
Какой-то текст и разметка на XHTML.
Какой-то
текст
и разметка
на
XHTML.
Элементы и теги
Элементы — основа XHTML — записываются в виде тегов.
Любой XHTML-документ (то есть, Web-страница) является обычным текстовым файлом, в котором помимо текста присутствуют специальные коды, этот текст описывающие, то есть привносящие в документ структуру.
Эти коды — теги — служат для разбивки текста на информационные фрагменты — элементы, чётко отражающие структуру информации и взаимосвязь между её частями.
Теги для какого-либо элемента записываются следующим образом:
<имя-элемента>Содержимое элемента</имя-элемента>
То есть сначала идёт открывающий тег — имя элемента в угловых скобках, далее — содержимое элемента — любая комбинация других элементов и текстовых комментариев, и всё завершает закрывающий тег — имя элемента с обычной косой в угловых скобках.
Вот, например, конструкция посложнее:
<элемент-1>
Какой-то текст.
<элемент-2>
Содержимое вложенного элемента.
</элемент-2>
Ещё какой-то текст.
</элемент-1>
То есть, в элемент элемент-1 вложены два текстовых комментария и один элемент элемент-2.
Помня, что в XHTML пробелы и начала новых строк игнорируются, перепишем предыдущий код:
<эл-нт-1>Текст<эл-нт-2>Содержимое эл-та</эл-нт-2>Ещё текст</эл-нт-1>
Как видите, такой «неупорядоченный» код сложно анализировать.
Старайтесь отступами показывать вложенность элементов, это облегчит Вам последующий разбор кода.
На любой странице должны быть элементы html, head, title и body. Подробнее эти элементы обсуждаются в следующей статье.
Вложение элементов
Парность открывающих и закрывающих тегов является обязательным условием для верного XHTML-документа.
В XHTML невозможно пересечение элементов.
Тег, открытый первым, закрывается последним, и наоборот.
Например, такая запись будет неверной:
Неверный пример!
<элемент-1><элемент-2></элемент-1></элемент-2>
В предыдущем примере нельзя сказать, какой из элементов — дочерний, а какой — родительский.
Код следует исправить таким образом:
<элемент-1><элемент-2></элемент-2></элемент-1>
Важно всегда соблюдать вложенность элементов и не допускать их пересечения.
И в HTML пересечение элементов было запрещённым, но большинсто обозревателей прощало эту ошибку.
В XHTML пересечение недопустимо.
Пустые элементы
Если у элемента нет содержимого, его запись немного отличается от стандартной.
Если у элемента никогда не бывает содержимого, его запись отличается от стандартной.
Вместо того, чтобы писать открывающий тег и сразу за ним — закрывающий:
<элемент></элемент>
используют такую запись:
<элемент />
То есть, оба тега объединяют в один. Для этого в конце открывающего тега перед угловой скобкой добавляют пробел и обычную косую черту.
Обратите внимание, что пробел перед косой является обязательным.
Таким образом записываются только те элементы, у которых никогда не бывает содержимого.
Если у какого-либо элемента просто нет содержимого в данном конкретном случае, его всё равно необходимо представить парой тегов.
Как пример пустых элементов можно привести элементы br,img и meta.
В HTML пустые элементы записывались просто в виде одиночного открывающего тега. В XHTML для пустых элементов определён свой синтаксис.
Текстовый комментарий
Это сложное слово несёт в себе простой смысл.
В XHTML любой текст, который может выводиться на экран, называется текстовым комментарием.
В повседневной жизни этот термин часто заменяется простым словом «текст».
Не будем отказывать себе в этом удовольствии и мы, и будем равнозначно использовать слова «текстовый комментарий» и «текст».
«Текстовый комментарий» и «комментарий» — разные термины, которые нельзя путать.
Комментарии
Комментарии облегчают последующий разбор документа.
Необходимо подробно комментировать код.
Тогда в нём легко разобраться в будущем.
Также, часто возникает необходимость временно отключить какой-то оператор.
Опять на помощь приходят комментарии.
В XHTML код также можно комментировать.
Комментарий начинается с последовательности «<!--» и заканчивается последовательностью «-->».
<!-- Это — комментарий.
Текст, введённый здесь, на экране не отображается
и никак не влияет на Web-страницу. -->
В комментарии нельзя использовать два дефиса подряд (--).
<!-- В комментарии нельзя использовать последовательность «--». -->
Атрибуты
Элементам можно задать какие-то характеристики — атрибуты.
Атрибуты записываются в открывающем теге элемента в виде пар «имя-атрибута="значение атрибута"».
Значение атрибута можно брать в двойные кавычки " либо в апострофы '.
В HTML кавычки для значений атрибутов можно было опускать. В XHTML значения атрибутов всегда берутся в кавычки.
Атрибуты разделяются пробелами либо новыми строками.
<имя-эл-та имя-атрибута-1="значение" имя-атрибута-2='значение'
></имя-элемента>
<имя-элемента
имя-атрибута-1="значение"
имя-атрибута-2='значение'>
</имя-элемента>
И опять таки, во втором случае код намного понятней.
Старайтесь показывать отступами структуру кода.
Атрибуты комментировать нельзя.
Неверный пример!
<имя-элемента
<!-- имя-атрибута-1="значение" -->
имя-атрибута-2="значение">
</имя-элемента>
В закрывающем теге атрибуты не пишутся.
Регистр
HTML был регистронезависимым языком. XHTML — регистрозависим.
В XHTML все имена элементов и атрибутов набираются только в нижнем регистре.
Редакторы
XHTML-документы могут создаваться и просматриваться множеством программ.
XHTML-документы являются простыми текстовыми файлами, которые можно создавать и править в любом редакторе.(Если редактировать в блокноте,необходимо файл сохранять с расширением html).