Xwab
Форумыnavigate_nextHTML/CSS

Валидация XHTML Mobile
Сообщения
Gnom7

Большая просьба, если я что-то упустил или неверно написал, сообщите в приват.

Теги входящие в XHTML MP
Популярные ошибки валидации

Это должен знать каждый.
1. Все теги и параметры должны быть набраны в нижнем регистре (строчными символами).
2. Значения любых параметров необходимо заключать в кавычки.
3. Требуется закрывать все теги, даже такие, которым не сопоставлен закрывающий тег.
4. Должна соблюдаться правильная вложенность тегов.
5. Нельзя использовать сокращенные атрибуты тегов.
6. Вместо параметра name следует указывать id.
7. Следует определять DTD (document type definition, описание типа документа) с помощью элемента <!DOCTYPE>.
Взято с http://htmlbook.ru


__________
посл.ред. 15 Авг 2010, 11:51; всего 2 раз(а) 30 Май 2010, 1:57
Gnom7

Теперь, то, что я насобирал на форумах WEN.RU и этом.
___
Тег не должен быть пустым или содержать только пробельные символы.
Например, не правильно
<span></span> или <span> </span>.
В таких случаях правильно <span>&#nbsp</span>


Нельзя во внутристрочные теги вкладывать блочные. Например, неправильно <span><div>Яна</div></span>.

Нельзя блочные физические теги вкладывать друг в дружку. Например, неправильно <h4><p>Бутерброд сумасброд</p></h4>.

Нельзя в блочные физические теги вкладывать блочные логические. Например, неправильно <h4><div>Бутерброд сумасброд</div></h4>.

Нельзя вкладывать друг в дружку некоторые однотипные теги вроде <form>. Например, неправильно <form …><form …><div>Чашки</div><form …></form …>.


__________
посл.ред. 07 Июн 2010, 8:54; всего 5 раз(а) 30 Май 2010, 1:58
Gnom7

Все данные формы должны находиться в блочном элементе (абсолютно все).
Для этого хорошо подходит тег <fieldset> или <div>.

Например,
<form action=''>
<fieldset style='border: none'>
Комментарий:
<input type='text' />
<input type='submit' />
</fieldset>
</form>

Но неправильно,
<form action=''>
Комментарий:
<div>
<input type='text' />
<input type='submit' />
</div>
</form>
___
Нельзя нарушать структуру списков и форм.
Например, неправильно <li>список</li> или <ul>Список</ul>.
Правильно <ul><li>список</li></ul>.


__________
посл.ред. 07 Июн 2010, 8:44; всего 2 раз(а) 30 Май 2010, 1:58
Gnom7

Символы '<' и '&' на странице должны быть, заменены на свои спецсимволы &lt; и &amp; т.к. они зарезервированы HTML. Первый уведомляет браузер, о том, что открылся тег, а второй, о том, что объявлен спецсимвол.

У некоторых тегов есть обязательные атрибуты, без которых можно обойтись, но нельзя упускать. Например, у тега <img ... /> атрибут alt.


__________
посл.ред. 30 Май 2010, 13:32; всего 1 раз 30 Май 2010, 1:59
Gnom7

Тег <script> - запрещён.
При использовании в тегах атрибута style, необходимо добавить мета тег <meta http-equiv='Content-Style-Type' content='text/css' />

30 Май 2010, 2:00
Gnom7

По пункту 'Требуется закрывать все теги, даже такие, которым не сопоставлен закрывающий те' добавлю, что одиночные теги <br>, <hr>, <img>, <meta>, <link> должны быть закрыты так <br />, <hr />, <img />, <meta />, <link />.
По пункту ‘Нельзя использовать сокращенные атрибуты тегов’ добавлю, что нельзя писать <input type='' disabled>, правильно будет <input type='' disabled='disabled'>

30 Май 2010, 2:01
EZHIK

Спасибо за полезную инфу =)....правда вот на счет:
-------------
Нельзя во внутристрочные теги вкладывать блочные. Например, неправильно <span><div>Яна</div></span>.
-------------
Я не очень понял...

30 Май 2010, 8:01
Gnom7

EZHIK, грубо говоря, теги можно разделить на две категории – внутристрочные и блочные (в нашем случае это <span> и <div>). Первые используются для форматирования данных, вторые для группирования элементов.
Внутристрочные теги могут хранить в себе только данные и другие внутристрочные теги.
Блочные же могут хранить в себе помимо перечисленного и другие блочные теги.

30 Май 2010, 8:35
EZHIK

Gnom7, т.е <div><h1>Текст</h1></div> - можно
<h1><div>Текст</div></h1> - нельзя
так?
P.S Спасибо за инфо, и разжовывание информации =)

30 Май 2010, 10:20
Gnom7

EZHIK, в вашем случае оба тега блочные.
Первый пример - валиден, второй пример - нет, потому что вы вложили логический тег в физический.

Логические и физические теги http://www.sitesnulya.ru/html/tegi-logicheskoy.html

Спасибо за вопрос. Поправил сообщение #2

30 Май 2010, 11:29
Ответить на тему