Опубликован: 19.10.2006 | Уровень: для всех | Доступ: свободно
Дополнительный материал 2:

Учебное руководство по XHTML

< Дополнительный материал 1 || Дополнительный материал 2: 123456

Синтаксис XHTML

При записи документа XHTML требуется использовать четкий синтаксис HTML.

Дополнительные правила синтаксиса XHTML

  • Имена атрибутов должны записываться в нижнем регистре
  • Значения атрибутов должны заключаться в кавычки
  • Минимизация атрибутов запрещена
  • Атрибут id заменяет атрибут name
  • DTD XHTML определяет обязательные элементы

Имена атрибутов должны записываться в нижнем регистре

Неправильно:

<table WIDTH="100%">

Правильно:

<table width="100%">

Значения атрибутов должны заключаться в кавычки

Неправильно:

<table width=100%>

Правильно:

<table width="100%">

Минимизация атрибутов запрещена

Неправильно:

<input checked>
<input readonly>
<input disabled>
<option selected>
<frame noresize>

Правильно:

<input checked="checked" />
<input readonly="readonly" />
<input disabled="disabled" />
<option selected="selected" />
<frame noresize="noresize" />

Ниже представлен список минимизированных атрибутов HTML и их запись в XHTML.

HTML XHTML
compact compact="compact"

checked

declare

checked="checked"

declare="declare"

readonly readonly="readonly"
disabled disabled="disabled"
selected selected="selected"
defer defer="defer"
ismap ismap="ismap"
nohref nohref="nohref"
noshade noshade="noshade"
nowrap nowrap="nowrap"
multiple multiple="multiple"
noresize noresize="noresize"

Атрибут id заменяет атрибут name

HTML 4.01 определяет атрибут name для элементов a, applet, frame, iframe, img, и map. В XHTML атрибут name исключен. Вместо него используется атрибут id.

Неправильно:

<img src="picture.gif" name="рис. 1" />

Правильно:

<img src="picture.gif" id="рис. 1" />

Примечание: Для взаимодействия со старыми браузерами в течение некоторого времени необходимо будет использовать оба атрибута name и id, с одинаковыми значениями атрибутов, например: <img src="picture.gif" id="рис. 1" name="рис. 1" />.

Важное замечание о совместимости

Для совместимости XHTML с современными браузерами, необходимо добавить дополнительный пробел перед символом "/".

Атрибут lang

Атрибут lang применим почти к любому элементу XHTML. Он определяет язык содержимого внутри элемента.

Если в каком-то элементе используется атрибут lang, то необходимо добавить атрибут xml:lang, например: <div lang="fr" xml:lang="fr">Bonjour, madam!</div>.

Обязательные элементы XHTML

Все документы XHTML должны иметь объявление DOCTYPE. Также должны присутствовать элементы html, head и body, а внутри элемента head должен присутствовать элемент title.

Шаблон минимального документа XHTML имеет следующий вид:

<!DOCTYPE Здесь определяется тип документа>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Здесь задается заголовок </title>
</head>
<body>
</body>
</html>

Примечание: Объявление DOCTYPE не является частью самого документа XHTML. Это объявление не является элементом XHTML и не должно иметь закрывающий тег.

Примечание: Атрибут xmlns в теге <html> является в XHTML обязательным. Однако программа проверки (валидатор) на сайте w3.org не высказывает претензий, когда этот атрибут отсутствует в документе XHTML. Это обусловлено тем, что атрибут "xmlns=http://www.w3.org/1999/xhtml" имеет фиксированное значение и будет добавлен в тег <html>, даже если он не был включен.

В следующем разделе представлена дополнительная информация об определении типа документа XHTML.

< Дополнительный материал 1 || Дополнительный материал 2: 123456
Елена Сапегова
Елена Сапегова

После прохождения теоретической части пришло письмо об окончании теоретической части курса, будет ли практическая часть?

Рустам Рахимов
Рустам Рахимов

Пол часа искал в интеренете, как что работает. Такое чувство что автор пишет для людей которые уже знают js, или просто хвастается своими знаниями. Конструкция формы непонятна. И можно было бы в кратце написать, что такое событие которое используют. Сорершенно не понятно как работает форма, и как брать из нее значение. 

function Complete() {

    var x = "Имя: " + document.tutform.firstname.value;

alert(x);

} - Так брать значение из формы tutform, firstname-получаем значение из имени. 

<INPUT TYPE="button" VALUE="Готово" onClick="Complete();"> - Нужно к кнопке прописать событие, при нажатие на кнопку готово, чтобы возвращалось значение с помощью функции. А так ничего не работает, и смысла учить нету, если не знать почему не работает.

 


( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.1279101171544watchdog( )../bootstrap.inc:0
23.1285101174032module_invoke( )../bootstrap.inc:967
33.1286101175888call_user_func_array ( )../module.inc:462
43.1286101176224devel_watchdog( )../module.inc:462
53.1288101177072decode_entities( )../devel.module:382
63.1289101178992drupal_error_handler( )../devel.module:340
73.1289101182600watchdog( )../common.inc:663
83.1289101184688module_invoke( )../bootstrap.inc:967
93.1290101186544call_user_func_array ( )../module.inc:462
103.1290101186880devel_watchdog( )../module.inc:462
113.1291101187576decode_entities( )../devel.module:382

( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.1279101171544watchdog( )../bootstrap.inc:0
23.1285101174032module_invoke( )../bootstrap.inc:967
33.1286101175888call_user_func_array ( )../module.inc:462
43.1286101176224devel_watchdog( )../module.inc:462
53.1288101177072decode_entities( )../devel.module:382
63.1289101178992drupal_error_handler( )../devel.module:340
73.1289101182600watchdog( )../common.inc:663
83.1289101184688module_invoke( )../bootstrap.inc:967
93.1290101186544call_user_func_array ( )../module.inc:462
103.1290101186880devel_watchdog( )../module.inc:462
113.1291101187576decode_entities( )../devel.module:382

( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.1279101171544watchdog( )../bootstrap.inc:0
23.1285101174032module_invoke( )../bootstrap.inc:967
33.1286101175888call_user_func_array ( )../module.inc:462
43.1286101176224devel_watchdog( )../module.inc:462
53.1288101177072decode_entities( )../devel.module:382
63.1304101179184drupal_error_handler( )../devel.module:340
73.1304101182872watchdog( )../common.inc:663
83.1304101184960module_invoke( )../bootstrap.inc:967
93.1305101186816call_user_func_array ( )../module.inc:462
103.1305101187152devel_watchdog( )../module.inc:462
113.1306101187928decode_entities( )../devel.module:382

( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.1279101171544watchdog( )../bootstrap.inc:0
23.1285101174032module_invoke( )../bootstrap.inc:967
33.1286101175888call_user_func_array ( )../module.inc:462
43.1286101176224devel_watchdog( )../module.inc:462
53.1288101177072decode_entities( )../devel.module:382
63.1304101179184drupal_error_handler( )../devel.module:340
73.1304101182872watchdog( )../common.inc:663
83.1304101184960module_invoke( )../bootstrap.inc:967
93.1305101186816call_user_func_array ( )../module.inc:462
103.1305101187152devel_watchdog( )../module.inc:462
113.1306101187928decode_entities( )../devel.module:382

( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.1320101172088watchdog( )../bootstrap.inc:0
23.1320101174176module_invoke( )../bootstrap.inc:967
33.1320101176032call_user_func_array ( )../module.inc:462
43.1320101176368devel_watchdog( )../module.inc:462
53.1321101177072decode_entities( )../devel.module:382
63.1322101178992drupal_error_handler( )../devel.module:340
73.1322101182600watchdog( )../common.inc:663
83.1322101184688module_invoke( )../bootstrap.inc:967
93.1323101186544call_user_func_array ( )../module.inc:462
103.1323101186880devel_watchdog( )../module.inc:462
113.1324101187576decode_entities( )../devel.module:382

( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.1320101172088watchdog( )../bootstrap.inc:0
23.1320101174176module_invoke( )../bootstrap.inc:967
33.1320101176032call_user_func_array ( )../module.inc:462
43.1320101176368devel_watchdog( )../module.inc:462
53.1321101177072decode_entities( )../devel.module:382
63.1322101178992drupal_error_handler( )../devel.module:340
73.1322101182600watchdog( )../common.inc:663
83.1322101184688module_invoke( )../bootstrap.inc:967
93.1323101186544call_user_func_array ( )../module.inc:462
103.1323101186880devel_watchdog( )../module.inc:462
113.1324101187576decode_entities( )../devel.module:382

( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.1320101172088watchdog( )../bootstrap.inc:0
23.1320101174176module_invoke( )../bootstrap.inc:967
33.1320101176032call_user_func_array ( )../module.inc:462
43.1320101176368devel_watchdog( )../module.inc:462
53.1321101177072decode_entities( )../devel.module:382
63.1334101179184drupal_error_handler( )../devel.module:340
73.1334101182872watchdog( )../common.inc:663
83.1335101184960module_invoke( )../bootstrap.inc:967
93.1335101186816call_user_func_array ( )../module.inc:462
103.1335101187152devel_watchdog( )../module.inc:462
113.1336101187928decode_entities( )../devel.module:382

( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.1320101172088watchdog( )../bootstrap.inc:0
23.1320101174176module_invoke( )../bootstrap.inc:967
33.1320101176032call_user_func_array ( )../module.inc:462
43.1320101176368devel_watchdog( )../module.inc:462
53.1321101177072decode_entities( )../devel.module:382
63.1334101179184drupal_error_handler( )../devel.module:340
73.1334101182872watchdog( )../common.inc:663
83.1335101184960module_invoke( )../bootstrap.inc:967
93.1335101186816call_user_func_array ( )../module.inc:462
103.1335101187152devel_watchdog( )../module.inc:462
113.1336101187928decode_entities( )../devel.module:382