Ошибка html head title

Большинство ошибок, возникающих при валидации кода можно свести к набору типовых вариантов, зная которые легко понять, на что «намекает» валидатор. В качестве образца возьмем расширение HTML Validator для браузера Firefox, предназначенное для проверки кода и рассмотрим список ошибок и замечаний по коду.

Посмотреть все возможные сообщения валидатора можно по адресу http://www.htmlpedia.org/wiki/HTML_Tidy, далее приведены основные ошибки с их описанием и решением. Зеленым цветом выделен корректный вариант, другой цвет используется для обозначения ошибки.

Notice: entity «…» doesn’t end in «;»

Это замечание возникает при использовании спецсимволов вроде < при отсутствии на конце точки с запятой.

 

&nbsp

Решение

Добавьте в конце спецсимвола точку с запятой.

Notice: numeric character reference «…» doesn’t end in ‘;’

Возникает при использовании числовых спецсимволов вроде когда в конце забыли добавить точку с запятой.

&#8482

Решение

Добавьте в конце спецсимвола точку с запятой.

unescaped & or unknown entity «&…»

Символ амперсанда (&) часто применяется в адресах ссылок (атрибут href тега <a>), поскольку он разделяет несколько параметров. Однако амперсанд зарезервирован для спецсимволов вроде &nbsp; поэтому в ссылках необходимо указывать &amp; вместо &.

<a href=»http://www.htmlbook.ru/content/?id=30&amp;text=1″>Ссылка</a>

<a href=»http://www.htmlbook.ru/content/?id=30&text=1″>Ссылка</a>

Решение

Замените & на &amp;.

missing </…>

Отсутствует обязательный закрывающий тег.

<head><title>Заголовок</title></head>

<head><title>Заголовок</head>

Решение

Добавьте закрывающий тег.

missing </aaa> before <bbb>

Ошибка возникает при нарушении порядка тегов, когда блочный тег располагается внутри встроенного. В данном случае блочный тег <bbb> находится внутри встроенного тега <aaa>.

<p><span>Текст</span></p>

<span><p>Текст</p></span>

Решение

Поменяйте расположение тегов — перенесите встроенный тег внутрь блочного.

discarding unexpected <…>

Обнаружен открывающий или закрывающий тег, у которого нет пары. Подобная ошибка возникает в двух случаях: есть открывающий тег, но нет закрывающего; имеется закрывающий тег, которому не соответствует открывающий.

<div><div>Текст</div></div>

<div>Текст</div></div>

<div><div>Текст</div>

Решение

В зависимости от ситуации добавьте или удалите открывающий или закрывающий тег.

Notice: nested emphasis …

Контейнер содержит аналогичный тег физического форматирования, который не должен повторяться.

<p><b>Текст</b></p>

<p><b><b>Текст</b></b></p>

Решение

Удалите один из тегов.

replacing unexpected … by </…>

Закрывающий тег не соответствует открывающему тегу.

<p><b>Текст</b></p>

<p><b>Текст</span></p>

Решение

Замените открывающий или закрывающий тег на парный.

… isn’t allowed in <…> elements

Обнаружены теги, которые запрещено размещать внутри указанных элементов.

<head><title>Заголовок</title></head>

<head><body>Текст</body></head>

Решение

Переместите HTML-элемент в правильный раздел.

missing <…>

Нет обязательного тега в структуре элементов. Ошибка, к примеру, может возникнуть при формировании таблицы, когда пропущен тег <tr> и сразу же после <table> следует <td>.

<ol><li>Список</li></ol>

<ol>Список</ol>

Решение

Проверить правильность вложения тегов в текущем элементе и наличие обязательных элементов.

Notice: inserting implicit <…>

Сообщение возникает из-за предыдущей ошибки на странице.

Решение

Исправьте предыдущие ошибки.

Insert missing <title> element

В коде не вставлен тег <title>.

<head><title>Заголовок</title></head>

<head></head>

Решение

Добавьте контейнер <title>.

Multiple <frameset> elements

Тег <frameset> используется в документе более одного раза без вложения. Допускается вставлять несколько элементов <frameset>, но вложенных один в другой.

<frameset …><frame …>
<frameset …><frame …></frameset>
</frameset>

<frameset …><frame …></frameset>
<frameset …><frame …></frameset>

Решение

Используйте вложенные теги <frameset>.

<…> is not approved by W3C

Указанный тег не входит в спецификацию HTML.

<span style=»white-space: nowrap;»>текст без переносов</span>

<nobr>текст без переносов</nobr>

Решение

Удалите тег или замените его подходящим эквивалентом.

Error: <…> is not recognized!

Тег не распознан и не входит в спецификацию HTML.

Правильно: <p>Текст</p>

Неверно: <p><adres>Текст</adres></p>

Решение

Удалите неизвестный тег.

Trimming Empty Tag

Контейнер пустой или содержит только пробел.

<p>Текст</p>

<p>&nbsp;</p>

<p></p>

Решение

Удалите тег или добавьте внутрь контейнера текст.

<a> is probably intended as </a>

В закрывающем теге <a> отсутствует слэш.

<a href=»http://htmlbook.ru»>Ссылка на сайт</a>

<a href=»http://htmlbook.ru»>Ссылка на сайт<a>

Решение

Добавьте слэш к закрывающему тегу.

… shouldn’t be nested

Некоторые теги вроде <form> не могут содержать сами себя. Это сообщение также возникает из-за предыдущей ошибки.

<form action=»gb.php» name=»guestbook»></form>
<form action=»gb2.php» name=»guestbook2″></form>

<form action=»gb.php» name=»guestbook»>
<form action=»gb2.php» name=»guestbook2″></form>
</form>

Решение

Удалите вложенные теги или исправьте предыдущую ошибку.

Text found after closing </body>-tag

Теги или текст добавляется после закрывающего тега </body>.

<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной текст</p></body>
</html>

<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной текст</p></body>
 <b>Привет!</b>
</html>

Решение

Удалите текст после тега </body> или перенесите этот тег в конец текста.

Adjacent hyphens within comment

Комментарии в коде HTML определяются конструкцией вида <!— комментарий —>. Если в тексте комментария подряд идет два и более дефиса, возникает ошибка.

<!— Комментарий — заголовок —>

<!— комментарий —>

<!— Комментарий — тело документа —>

Решение

Удалите лишние дефисы.

SYSTEM, PUBLIC, W3C, DTD, EN must be upper case

Элемент <!DOCTYPE> указан неверно, в частности следующие атрибуты необходимо писать в верхнем регистре: SYSTEM, PUBLIC, W3C, DTD, EN.

<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN» «http://www.w3.org/TR/html4/loose.dtd»>

<!doctype html public «-//w3c//dtd html 4.01 Transitional//en» «http://www.w3.org/TR/html4/loose.dtd»>

Решение

Пишите <!DOCTYPE> корректно.

Warning: missing <!DOCTYPE> declaration

Не указан элемент <!DOCTYPE>.

<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01//EN» «http://www.w3.org/TR/html4/strict.dtd»>
<html>
<head>
<title>Заголовок</title>
</head>
<body>
<p>Основной текст</p>
</body>
</html>

<html>
<head>
<title>Untitled Document</title>
</head>
<body>
</body>
</html>

Решение

Поместите элемент <!DOCTYPE> в самую первую строку кода документа.

Too much <…>-elements

Повторяется тег, который в коде должен быть только один. К таким тегам относится <html>, <head>, <title> и <body>.

<head>
<title>Заголовок</title>
</head>

<head>
<title>Заголовок</title>
<title>Название статьи</title>
</head>

Решение

Удалите повторяющийся тег.

<…> inserting «…» attribute

Не указан обязательный атрибут для данного тега.

<style type=»text/css»>

<style>

Решение

Проверьте тег и добавьте недостающие атрибуты.

… attribute … lacks value

Атрибут тега не содержит обязательное значение или оно написано с синтаксической ошибкой.

<a href=»link.html»>Ссылка</a>

<a href>Ссылка</a>

Решение

Проверьте атрибуты тега и добавьте недостающие значения.

… attribute «…» has invalid value «…»

Атрибут содержит некорректное значение. Ошибка проявляется в тех случаях, когда в значении вместо текста пишется число и наоборот. Так, атрибуты id и name должны начинаться с символа ([A-Za-z]) и могут содержать цифры ([0-9]), дефис (-), подчеркивание (_), двоеточие (:) и точку (.). Значение ширины и высоты в атрибутах тегов не должно содержать ничего, кроме цифр ([0-9]) и процентов (%).

<div id=»layer1″>Слой 1</div>

<img src=»images/pic.gif» width=»200″ height=»120″>

<div id=»2layer»>Слой 2</div>

<img src=»images/pic.gif» width=»200px» height=»120px»>

Решение

Проверьте атрибут тега и измените его значение.

<…> missing > for end of tag

Ошибка может возникать в двух случаях: некорректно написан тег, что происходит, когда забыли добавить закрывающую скобку и применение > вместо использования спецсимвола.

<p>Пример текста</p>

<p>Для случая 0&lt;p рассмотрим следующий пример.</p>

<p Пример текста</p>

<p>Для случая 0<p рассмотрим следующий пример.</p>

Решение

Вставьте отсутствующую закрывающую скобку.
Замените < на &lt;.

<…> proprietary attribute «…»

Тег содержит атрибут, специфичный только для браузера Internet Explorer или другого и не входящий в спецификацию. Примером является атрибут height тега <table>.

Список всех атрибутов, входящих в спецификацию HTML приведен по адресу http://www.w3.org/TR/html4/index/attributes.html

<table style=»height: 100%»>

<table height=»100%»>

Решение

Список наиболее характерных атрибутов тегов приведен в табл. 14.1.

Табл. 14.1. Замена нестандартных атрибутов тегов

Тег Устаревший атрибут Стандартный атрибут
<body> marginwidth=0, marginheight=0, leftmargin=0, topmargin=0 style=»margin: 0″
<table> height=100% style=»height: 100%»
<table> nowrap style=»white-space: nowrap» или
<td nowrap>
<td> background=»abc.gif» style=»background-image:url(abc.gif)»

… proprietary attribute value «…»

Значение атрибута не входит в спецификацию HTML и является специфичным для браузера Internet Explorer или другого. Например, значение align=»absmiddle» тега <img> недопустимо.

<p><img src=»hello.gif» alt=»Привет» align=»middle»></p>

<p><img src=»hello.gif» alt=»Привет» style=»vertical-align: middle»></p>

<p><img src=»hello.gif» alt=»Привет» align=»absmiddle»></p>

Решение

Используйте стандартные значения атрибутов тегов или используйте стилевой эквивалент.

… dropping value «…» for repeated attribute «…»

Атрибут применяется в теге больше одного раза.

<img src=»image.jpg»>

<img src=»image.jpg» src=»image.jpg»>

Решение

Удалите повторяющийся атрибут.

… unexpected or duplicate quote mark

Отсутствует открывающая или закрывающая кавычка в атрибуте тега.

<img src=»image.jpg»>

<img src=image.jpg»>

Решение

Добавьте парную кавычку к значению атрибута.

… attribute with missing trailing quote mark

Тег содержит атрибут, в котором задано неверное количество кавычек.

<p id=»my_id»>

<p id=»my_id»»>

Решение

Добавьте или удалите одну из кавычек.

… id and name attribute value mismatch

Ошибка возникает, когда значения атрибутов id и name не совпадают между собой, что приводит к конфликту при обращении к свойствам элемента через скрипты.

<a name=»elm» id=»elm»>

<a id=»elm»>

<a name=»abcdef» id=»db1″>

Решение

Удалите один из атрибутов или сделайте значения атрибутов name и id одинаковыми.

Notice: replacing <…> by <…>

Ошибка возникает в следующих случаях:

  • неверный порядок тегов;
  • добавлен лишний закрывающий тег;
  • имеется открывающий тег без наличия обязательного закрывающего.

<p>Текст</p><br>

<p>Текст</p></p>

<p>abc<br><table>…</table></p>

Решение

Измените порядок тегов или удалите один из открывающих или закрывающих тегов.

… anchor «…» already defined

Значения атрибута name у различных тегов совпадает между собой. Значение name должно быть уникальным.

<form name=»my_form1″ action=»test1.php»></form>
<form name=»my_form2″ action=»test2.php»></form>

<form name=»my_form» action=»test1.php»></form>
<form name=»my_form» action=»test2.php»></form>

Решение

Выберите другое имя или измените предыдущие имена таким образом, чтобы они не совпадали.

<…> is probably intended as </…>

Тег повторяется дважды в коде HTML, тогда как подобный тег не должен содержать сам себя.

<em>Привет, мир!</em>

<em>Привет<em>, мир!</em></em>

Решение

Удалите один из тегов.

<…> lacks «…» attribute

Требуется обязательный атрибут тега, который, тем не менее, отсутствует.

<form action=»my_action.php»>

<form>

Решение

Добавьте недостающий атрибут к тегу.

Большинство ошибок, возникающих при валидации кода можно свести к набору типовых вариантов, зная которые легко понять, на что «намекает» валидатор. В качестве образца возьмем расширение HTML Validator для браузера Firefox, предназначенное для проверки кода и рассмотрим список ошибок и замечаний по коду.

Посмотреть все возможные сообщения валидатора можно по адресу http://www.htmlpedia.org/wiki/HTML_Tidy, далее приведены основные ошибки с их описанием и решением. Зеленым цветом выделен корректный вариант, другой цвет используется для обозначения ошибки.

Notice: entity «…» doesn’t end in «;»

Это замечание возникает при использовании спецсимволов вроде &lt; при отсутствии на конце точки с запятой.

&nbsp;

&nbsp

Решение

Добавьте в конце спецсимвола точку с запятой.

Notice: numeric character reference «…» doesn’t end in ‘;’

Возникает при использовании числовых спецсимволов вроде когда в конце забыли добавить точку с запятой.

&#8482

Решение

Добавьте в конце спецсимвола точку с запятой.

unescaped & or unknown entity «&…»

Символ амперсанда (&) часто применяется в адресах ссылок (атрибут href тега <a>), поскольку он разделяет несколько параметров. Однако амперсанд зарезервирован для спецсимволов вроде &nbsp; поэтому в ссылках необходимо указывать &amp; вместо &.

<a href=»http://www.htmlbook.ru/content/?id=30&amp;text=1″>Ссылка</a>

<a href=»http://www.htmlbook.ru/content/?id=30&text=1″>Ссылка</a>

Решение

Замените & на &amp;.

missing </…>

Отсутствует обязательный закрывающий тег.

<head><title>Заголовок</title></head>

<head><title>Заголовок</head>

Решение

Добавьте закрывающий тег.

missing </aaa> before <bbb>

Ошибка возникает при нарушении порядка тегов, когда блочный тег располагается внутри встроенного. В данном случае блочный тег <bbb> находится внутри встроенного тега <aaa>.

<p><span>Текст</span></p>

<span><p>Текст</p></span>

Решение

Поменяйте расположение тегов — перенесите встроенный тег внутрь блочного.

discarding unexpected <…>

Обнаружен открывающий или закрывающий тег, у которого нет пары. Подобная ошибка возникает в двух случаях: есть открывающий тег, но нет закрывающего; имеется закрывающий тег, которому не соответствует открывающий.

<div><div>Текст</div></div>

<div>Текст</div></div>

<div><div>Текст</div>

Решение

В зависимости от ситуации добавьте или удалите открывающий или закрывающий тег.

Notice: nested emphasis …

Контейнер содержит аналогичный тег физического форматирования, который не должен повторяться.

<p><b>Текст</b></p>

<p><b><b>Текст</b></b></p>

Решение

Удалите один из тегов.

replacing unexpected … by </…>

Закрывающий тег не соответствует открывающему тегу.

<p><b>Текст</b></p>

<p><b>Текст</span></p>

Решение

Замените открывающий или закрывающий тег на парный.

… isn’t allowed in <…> elements

Обнаружены теги, которые запрещено размещать внутри указанных элементов.

<head><title>Заголовок</title></head>

<head><body>Текст</body></head>

Решение

Переместите HTML-элемент в правильный раздел.

missing <…>

Нет обязательного тега в структуре элементов. Ошибка, к примеру, может возникнуть при формировании таблицы, когда пропущен тег <tr> и сразу же после <table> следует <td>.

<ol><li>Список</li></ol>

<ol>Список</ol>

Решение

Проверить правильность вложения тегов в текущем элементе и наличие обязательных элементов.

Notice: inserting implicit <…>

Сообщение возникает из-за предыдущей ошибки на странице.

Решение

Исправьте предыдущие ошибки.

Insert missing <title> element

В коде не вставлен тег <title>.

<head><title>Заголовок</title></head>

<head></head>

Решение

Добавьте контейнер <title>.

Multiple <frameset> elements

Тег <frameset> используется в документе более одного раза без вложения. Допускается вставлять несколько элементов <frameset>, но вложенных один в другой.

<frameset …><frame …>
<frameset …><frame …></frameset>
</frameset>

<frameset …><frame …></frameset>
<frameset …><frame …></frameset>

Решение

Используйте вложенные теги <frameset>.

<…> is not approved by W3C

Указанный тег не входит в спецификацию HTML.

<span style=»white-space: nowrap;»>текст без переносов</span>

<nobr>текст без переносов</nobr>

Решение

Удалите тег или замените его подходящим эквивалентом.

Error: <…> is not recognized!

Тег не распознан и не входит в спецификацию HTML.

Правильно: <p>Текст</p>

Неверно: <p><adres>Текст</adres></p>

Решение

Удалите неизвестный тег.

Trimming Empty Tag

Контейнер пустой или содержит только пробел.

<p>Текст</p>

<p>&nbsp;</p>

<p></p>

Решение

Удалите тег или добавьте внутрь контейнера текст.

<a> is probably intended as </a>

В закрывающем теге <a> отсутствует слэш.

<a href=»http://htmlbook.ru»>Ссылка на сайт</a>

<a href=»http://htmlbook.ru»>Ссылка на сайт<a>

Решение

Добавьте слэш к закрывающему тегу.

… shouldn’t be nested

Некоторые теги вроде <form> не могут содержать сами себя. Это сообщение также возникает из-за предыдущей ошибки.

<form action=»gb.php» name=»guestbook»></form>
<form action=»gb2.php» name=»guestbook2″></form>

<form action=»gb.php» name=»guestbook»>
<form action=»gb2.php» name=»guestbook2″></form>
</form>

Решение

Удалите вложенные теги или исправьте предыдущую ошибку.

Text found after closing </body>-tag

Теги или текст добавляется после закрывающего тега </body>.

<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной текст</p></body>
</html>

<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной текст</p></body>
 <b>Привет!</b>
</html>

Решение

Удалите текст после тега </body> или перенесите этот тег в конец текста.

Adjacent hyphens within comment

Комментарии в коде HTML определяются конструкцией вида <!— комментарий —>. Если в тексте комментария подряд идет два и более дефиса, возникает ошибка.

<!— Комментарий — заголовок —>

<!— комментарий —>

<!— Комментарий — тело документа —>

Решение

Удалите лишние дефисы.

SYSTEM, PUBLIC, W3C, DTD, EN must be upper case

Элемент <!DOCTYPE> указан неверно, в частности следующие атрибуты необходимо писать в верхнем регистре: SYSTEM, PUBLIC, W3C, DTD, EN.

<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN» «http://www.w3.org/TR/html4/loose.dtd»>

<!doctype html public «-//w3c//dtd html 4.01 Transitional//en» «http://www.w3.org/TR/html4/loose.dtd»>

Решение

Пишите <!DOCTYPE> корректно.

Warning: missing <!DOCTYPE> declaration

Не указан элемент <!DOCTYPE>.

<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01//EN» «http://www.w3.org/TR/html4/strict.dtd»>
<html>
<head>
<title>Заголовок</title>
</head>
<body>
<p>Основной текст</p>
</body>
</html>

<html>
<head>
<title>Untitled Document</title>
</head>
<body>
</body>
</html>

Решение

Поместите элемент <!DOCTYPE> в самую первую строку кода документа.

Too much <…>-elements

Повторяется тег, который в коде должен быть только один. К таким тегам относится <html>, <head>, <title> и <body>.

<head>
<title>Заголовок</title>
</head>

<head>
<title>Заголовок</title>
<title>Название статьи</title>
</head>

Решение

Удалите повторяющийся тег.

<…> inserting «…» attribute

Не указан обязательный атрибут для данного тега.

<style type=»text/css»>

<style>

Решение

Проверьте тег и добавьте недостающие атрибуты.

… attribute … lacks value

Атрибут тега не содержит обязательное значение или оно написано с синтаксической ошибкой.

<a href=»link.html»>Ссылка</a>

<a href>Ссылка</a>

Решение

Проверьте атрибуты тега и добавьте недостающие значения.

… attribute «…» has invalid value «…»

Атрибут содержит некорректное значение. Ошибка проявляется в тех случаях, когда в значении вместо текста пишется число и наоборот. Так, атрибуты id и name должны начинаться с символа ([A-Za-z]) и могут содержать цифры ([0-9]), дефис (-), подчеркивание (_), двоеточие (:) и точку (.). Значение ширины и высоты в атрибутах тегов не должно содержать ничего, кроме цифр ([0-9]) и процентов (%).

<div id=»layer1″>Слой 1</div>

<img src=»images/pic.gif» width=»200″ height=»120″>

<div id=»2layer»>Слой 2</div>

<img src=»images/pic.gif» width=»200px» height=»120px»>

Решение

Проверьте атрибут тега и измените его значение.

<…> missing > for end of tag

Ошибка может возникать в двух случаях: некорректно написан тег, что происходит, когда забыли добавить закрывающую скобку и применение > вместо использования спецсимвола.

<p>Пример текста</p>

<p>Для случая 0&lt;p рассмотрим следующий пример.</p>

<p Пример текста</p>

<p>Для случая 0<p рассмотрим следующий пример.</p>

Решение

Вставьте отсутствующую закрывающую скобку.
Замените < на &lt;.

<…> proprietary attribute «…»

Тег содержит атрибут, специфичный только для браузера Internet Explorer или другого и не входящий в спецификацию. Примером является атрибут height тега <table>.

Список всех атрибутов, входящих в спецификацию HTML приведен по адресу http://www.w3.org/TR/html4/index/attributes.html

<table style=»height: 100%»>

<table height=»100%»>

Решение

Список наиболее характерных атрибутов тегов приведен в табл. 14.1.

Тег Устаревший атрибут Стандартный атрибут
<body> marginwidth=0, marginheight=0, leftmargin=0, topmargin=0 style=»margin: 0″
<table> height=100% style=»height: 100%»
<table> nowrap style=»white-space: nowrap» или
<td nowrap>
<td> background=»abc.gif» style=»background-image:url(abc.gif)»

Табл. 14.1. Замена нестандартных атрибутов тегов

… proprietary attribute value «…»

Значение атрибута не входит в спецификацию HTML и является специфичным для браузера Internet Explorer или другого. Например, значение align=»absmiddle» тега <img> недопустимо.

<p><img src=»hello.gif» alt=»Привет» align=»middle»></p>

<p><img src=»hello.gif» alt=»Привет» style=»vertical-align: middle»></p>

<p><img src=»hello.gif» alt=»Привет» align=»absmiddle»></p>

Решение

Используйте стандартные значения атрибутов тегов или используйте стилевой эквивалент.

… dropping value «…» for repeated attribute «…»

Атрибут применяется в теге больше одного раза.

<img src=»image.jpg»>

<img src=»image.jpg» src=»image.jpg»>

Решение

Удалите повторяющийся атрибут.

… unexpected or duplicate quote mark

Отсутствует открывающая или закрывающая кавычка в атрибуте тега.

<img src=»image.jpg»>

<img src=image.jpg»>

Решение

Добавьте парную кавычку к значению атрибута.

… attribute with missing trailing quote mark

Тег содержит атрибут, в котором задано неверное количество кавычек.

<p id=»my_id»>

<p id=»my_id»»>

Решение

Добавьте или удалите одну из кавычек.

… id and name attribute value mismatch

Ошибка возникает, когда значения атрибутов id и name не совпадают между собой, что приводит к конфликту при обращении к свойствам элемента через скрипты.

<a name=»elm» id=»elm»>

<a id=»elm»>

<a name=»abcdef» id=»db1″>

Решение

Удалите один из атрибутов или сделайте значения атрибутов name и id одинаковыми.

Notice: replacing <…> by <…>

Ошибка возникает в следующих случаях:

  • неверный порядок тегов;
  • добавлен лишний закрывающий тег;
  • имеется открывающий тег без наличия обязательного закрывающего.

<p>Текст</p><br>

<p>Текст</p></p>

<p>abc<br><table>…</table></p>

Решение

Измените порядок тегов или удалите один из открывающих или закрывающих тегов.

… anchor «…» already defined

Значения атрибута name у различных тегов совпадает между собой. Значение name должно быть уникальным.

<form name=»my_form1″ action=»test1.php»></form>
<form name=»my_form2″ action=»test2.php»></form>

<form name=»my_form» action=»test1.php»></form>
<form name=»my_form» action=»test2.php»></form>

Решение

Выберите другое имя или измените предыдущие имена таким образом, чтобы они не совпадали.

<…> is probably intended as </…>

Тег повторяется дважды в коде HTML, тогда как подобный тег не должен содержать сам себя.

<em>Привет, мир!</em>

<em>Привет<em>, мир!</em></em>

Решение

Удалите один из тегов.

<…> lacks «…» attribute

Требуется обязательный атрибут тега, который, тем не менее, отсутствует.

<form action=»my_action.php»>

<form>

Решение

Добавьте недостающий атрибут к тегу.

..или страница которой нет!

Прежде чем создавать страницу ошибки 404 давайте сначала разберёмся что это вообще за ошибка такая..

Ошибка 404 или Not Found — не найдено.. это стандартный код ответа HTTP о том, что страницы, к которой обращается пользователь, нет на сервере.. попросту она не существует.

Возникать данная ошибка может в ряде случаев:

  • Ссылка, по которой пришёл пользователь, неверна.

  • Пользователь неправильно указал путь в адресной строке к одной из страниц Вашего сайта.

  • Ранее существовавшая страница Вами уже удалена или переименована, однако всё ещё существует в индексе поисковых систем или закладках пользователей.

Что увидит пользователь в результате этой ошибки?

В лучшем случае страницу с рекламой Вашего хостера и кратким объяснением что мол Вы «не туда попали».. в худшем это будет просто надпись: 404 Not Found — The requested URL /page.html was not found on this server — собственно «Запрашиваемый URL отсутствует на этом сервере».

Теперь представьте, что сделает пользователь когда увидит эту картину? Правильно!! закроет эту страницу и пойдёт искать интересующую его информацию в другом месте!! — в результате чего Вы потеряете целевого посетителя!

В этом уроке мы займёмся тем что создадим свою собственную пользовательскую страницу ошибки 404 — Которая в отличии от стандартных страниц ошибки будет иметь ряд несомненных преимуществ:

  • Данная страница будет содержать элементы дизайна Вашего сайта — тем самым даст понять посетителю что, несмотря на то что он попал не совсем туда куда хотел он всё таки попал именно на Ваш сайт!

  • Пользовательская страница 404, в отличие от стандартных, не будет «тупиковой», а на ней будут располагаться ссылки на основные страницы сайта.. — Что позволит посетителю двигаться дальше и тем самым удержит его на Вашем сайте.

  • Ну и в конце концов на такой странице можно дать вразумительные объяснения того по каким причинам пользователь оказался на ней.. предложить ему выход из сложившейся ситуации.. помочь найти на Вашем сайте интересующую его информацию.

Как видите сплошные плюсы..

Создаётся страница ошибки 404 точно так же как и любая другая страница на Вашем сайте.. никаких нюансов в коде странице нет..

Ну например создадим файл с именем 404.html

<html>
<head>
<title>Ошибка 404</title>
</head>
<body>
<img src=»graphics/404.gif» alt=»Ошибка 404″>
<p>К сожалению, запрашиваемая Вами страница не найдена..</p>
<p>Почему?</p>
<ol>
<li>Ссылка, по которой Вы пришли, неверна.
<li>Вы неправильно указали путь или название страницы.
<li>Страница была удалёна со времени Вашего последнего посещения.
</ol>
<p>Для продолжения работы с сайтом Вы можете воспользоваться формой поиска по сайту:</p>
<form>
<input type=»text» size=»30″>
<input type=»submit» value=»Поиск»>
</form>
<p>..или перейти на:</p>
<ul>
<li><a href=»#»>Главную страницу сайта.</a>
<li><a href=»#»>Карту сайта</a>
</ul>
</body>
</html>

На самом деле это просто страничка «скелет» конечно же Вам следует создать свою собственную, полноценную страницу ошибки 404.

Создали? а вот теперь поговорим о нюансах..

Для того что бы в случае возникновения ошибки с кодом 404 посетитель переходил на только что созданную нами страницу, необходимо создать системный файл .htaccess который будет содержать в себе директиву: ErrorDocument 404 — это директива указывает серверу о том куда следует перенаправлять пользователя в случае возникновения ошибки 404.

Что это за файл такой спросите Вы?

Файл .htaccess (я не опечатался, пишется с точкой в начале имени и не использует никакого расширения) – дает возможность конфигурировать работу сервера в отдельных его директориях..

На данный файл может быть возложен ряд специфических задач.. например: устанавливать права доступа к файлам в папке, менять названия индексных файлов, глобально перенаправлять посетителей на другой сайт, запретить доступ к сайту с определённого ip адреса… и еще много всяких иногда очень полезных вещей может делать этот чудо файл.. в том числе может самостоятельно обрабатывать ошибки сервера — что нам собственно и нужно!

Однако углубляться во все подробности и тонкости мы не будем, а поговорим лишь о том, что нас интересует на данный момент.

Итак, создаём файл под названием .htaccess который содержит в себе одну единственную строчку (если таковой файл уже имеется с какими ни будь другими инструкциями серверу, то просто дописываем в него эту строчку):

ErrorDocument 404 http://www.site.ru/404.html

И заливаем его на сервер в корневую папку сайта.

Ну только естественно сначала поменяйте в файле .htaccess ссылку http://www.site.ru/404.html на адрес Вашей собственной страницы которая должна будет открываться при возникновении ошибки 404.

Вот собственно и всё! теперь если Вы всё сделали правильно, при возникновении ошибки 404 будет загружаться Ваша «ошибочная» страница.

Сейчас огорчу тех кто располагает свой сайт на том или ином бесплатном хостинге.. Большинство бесплатных хостеров не дают доступа к файлу .htaccess так что создать страницу 404 на бесплатном хостинге вряд ли удастся.


P.S.Таким же способом с помощью файла .htaccess Вы можете обрабатывать и другие ошибки сервера:

  • 401 ошибка(ErrorDocument 401 http://www.site.ru/page.html)- Требуется авторизация.
  • 403 ошибка(ErrorDocument 403 http://www.site.ru/page.html)- Пользователь не прошел аутентификацию, доступ запрещен.
  • 500 ошибка(ErrorDocument 500 http://www.site.ru/page.html)- Внутренняя ошибка сервера.

Если что-то непонятно или Вы в чем-то сомневаетесь, то за дополнительными разъяснениями обращайтесь на форум.

Здравствуйте, читатели моего блога!

Наверняка, вы хотя бы раз переходили по нужной ссылке и оказывались на web-странице, которая указывает на ошибку 404!

А задумывались ли вы, что ее тоже кто-то создает? Да?! Вам тоже нужна такая страница для сайта? Давайте о ней и поговорим!

Вступление

Такая ошибка еще именуется Not Found и имеет свои особенности. Как это понимать? — Запрашиваемой интернет-страницы не существует на сервере и об этом вы получаете уведомление.

Несколько причин такой ситуации:

  • веб-страница удалена, но поисковые системы еще об этом не знают;
  • неверно указан путь непосредственно в адресной строке.
  • материал был перемещен в другую категорию, тем самым изменился адрес интернет-страницы, но в результатах поискового запроса еще остался предыдущий URL.
  • ситуация, как в предыдущем варианте, но был осуществлен переход по ссылке непосредственно на веб-сайте (такие интернет-ссылки называются «битыми»).
  • на сервере произошел какой-то сбой именно в тот момент, когда интернет-браузер посылал HTTP-запрос.

Когда посетитель ресурса переходит по такой ссылке, то он может обнаружить рекламу того или иного хостинг-провайдера, дополненную некоторыми краткими пояснениями. Также на экране часто высвечивается такое:  «404 Not Found» или «Запрашиваемый вами URL отсутствует на данном сервере».

Как вы думаете, что предпримет пользователь, попав на подобную площадку? Естественно, тут же закроет ее! Но как сделать такую страницу 404, на которой человек задержится и не покинет сайт? Возможно ли такое? Да, если она оформлена правильно и имеет привлекательный дизайн!

Вы можете создать веб-страницу Not Found, которая будет обладать целым перечнем преимуществ.

Ею можно:

  • Объяснить причину попадания на эту интернет-страницу;
  • Подсказать, что сделать, чтобы найти искомое;
  • Предложить перейти на главную web-страницу вашего ресурса.
  • Привлечь внимание пользователей к самому сайту, популярным материалам или рекламному объявлению;

Создается подобная красивая страница довольно просто.

Принцип разработки

Мой блог находится на платформе wordpress (WP). Я уже рассказывал, как установить WP на свой сайт. Когда Вордпресс встречается с «Ошибкой 404», он автоматически начинает искать файл 404.php. Но не все шаблоны имеют этот файл по умолчанию. При отсутствии этого файла пользователю выдается обычное сообщение об ошибке, которое, в свою очередь, не отличается особой привлекательностью.

Если у вас до сих пор нет такого файла, самое время им обзавестись. Создайте новый файл и сохраните его под названием «404.php» в папочке с темой вашего сайта.

Рекомендую использовать примерно такой html-код:

<html>
 
<head>
<title>Ошибка 404</title>
</head>
<body>
<p>Извините, но запрашиваемая веб-страница не найдена.</p>
<p>Возможные причины:</p>
<ol>
<li>Интернет-ссылка перехода неверна.
<li>Вы указали ошибочный URL.
<li>Веб-страница удалена.
</ol>
<p>Хотите продолжить работу с web-сайтом? Тогда воспользуйтесь формой поиска:</p>
<form>
<input type="text" size="25">
<input type="submit" value="Поиск">
</form>
<p>или перейдите на:</p>
<ul>
<li><a href="#">Главную страницу сайта</a>
<li><a href="#">Карту сайта</a>
</ul>
</body>
</html>

Выше вам была предложена просто схема, своеобразный скелет, который можно взять за основу. При этом вы всегда можете создать собственный уникальный вариант.

Но если вы не владеете языками html и php, то лучше наймите фрилансера-верстальщика, который вам всё сделает за небольшую плату. Искать их лучше здесь:

  1. FL.ru
  2. WebLancer.net

Страница 404 средствами .htaccess

Этот метод можно использовать для любых веб-сайтов (статических и динамических), если в их движках нет встроенных средств для создания интернет-страницы с ошибкой.

Найдите или создайте файл .htaccess в корне вашего веб-ресурса и пропишите:

ErrorDocument 404 /404.php

Не забудьте в папку c файлом .htaccess положить тот файл 404.html, который мы создали по примеру выше.

Можно написать так:

ErrorDocument 404 «404 page not found.»

При таком варианте будет просто выводится текст, который указан в кавычках. Тогда никакой файлик 404.php не нужен. Не желаете заморачиваться? Тогда этот вариант для вас!

Я думаю вы много нового узнали из этой статьи, неправда ли?! Также рекомендую почитать рекомендации яндекса по продвижению сайтов. Подписывайтесь на обновления блога и еще много интересной, а главное — полезной информации сможете узнать. Делитесь ссылками на статьи с друзьями через социальные сети и обсуждайте волнующие вас темы. До встречи!

С уважением! Абдуллин Руслан

Загрузка…

Понравился блог? Подпишись, чтобы получать новые статьи на почту и быть в курсе всех событий!

Версия Kooboo на момент написания статьи: 4.2.1

Другое ПО: IIS 8 (7 или 7.5)

Описание задачи: в момент возникновения ошибки на сайте Kooboo (на примере 404 ошибки) выдавать браузеру правильный статус ошибки, а пользователю показывать красивую страницу с ошибкой.

Описание проблемы: встроенные механизмы Kooboo позволяют настроить редирект при возникновении ошибки, но не выдают браузеру правильный код (всегда выдается код статуса 200, вместо, например, 404). Помимо этого роутеры Kooboo игнорируют некоторые типы файлов, вроде html, jpg и т.п. — для них необходимо отдельно настраивать редиректы на страницу с ошибкой.

Решение задачи кратко:

1) для файлов, игнорируемых kooboo, настроим редирект на kooboo-страницу с ошибкой через IIS (IIS в этом случае сам передает браузеру правильный код ошибки).

2) для всех остальных страниц сайта сделаем настройку в Kooboo, которая будет выдавать сначала код ошибки браузеру, а затем делать редирект на страницу с ошибкой.

Шаг 1

Итак, для начала создадим ту самую красивую страницу с ошибкой, которую будем показывать пользователю.

Соответственно дизайну нашего сайта создаем в Kooboo страницу, назовем ее к примеру, «error«. На ней размещаем нужную для пользователя информацию, чтобы он не ушел с нашего сайта из-за произошедшей ошибки.

В настройках этой страницы на вкладке «Маршрут URL (URL Route)» в поле «Путь URL (URL path)» добавляем параметр — {status} (через него мы будем передавать код ошибки для метрик и статистики):

set url route for kooboo

Шаг 2

Далее создадим html-файл для редиректа. Назовем его к примеру 404.html. Он будет содержать следующий код:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
    <title>404 error</title>
    <meta http-equiv="Content-Type" content="text/html; harset=windows-1251">
</head>
<script language="JavaScript">
<!--
 self.location="/error/404?url=" + self.location;
// --> 
</script>
<body>
Пожалуйста, нажмите <a href="http://mysite.ru">здесь,</a> 
чтобы перейти на главную cтраницу сайта.
</body>
</html>

Здесь главное — это строка:  self.location=»/error/404?url=» + self.location;

Остальное заполняем по желанию. Например, в теле страницы можно добавить ссылку на страницу вашего сайта, если вдруг скрипт переадресации не сработает.

Эта страница делает редирект на красивую страницу с ошибкой «error», которую мы создали в Kooboo (а в адресе параметром идет неверный URL, чтобы метрики могли собрать статистику по подобным обращениям).

Файл 404.html размещаем в корне нашего сайта (т.е. он должен, к примеру, отвечать по адресу http://mysite.ru/404.html).

Шаг 3

Настраиваем IIS для показа страницы 404.html при возникновении ошибки.

Для этого в настройках сайта в IIS переходим по кнопке «Error Pages» и редактируем строку со статусом ошибки 404:

edit custom error page in IIS 7

Мы не может выбрать способы 2 или 3, т.к. они выдают статусы 200. Только первая настройка выдает 404 код ошибки браузеру, но по-умолчанию на уровне IIS 7.5 запрещены абсолютные пути к файлам. Поэтому нужно дополнительно их разрешить.

Установка параметра, разрешающего абсолютные пути для страниц ошибок:

Нужно установить значение true для параметра — allowAbsolutePathsWhenDelegated

Делается это на уровне IIS в «Configuration Editor» на ветке «system.webServer/httpErrors«:

allow Absolute Paths When Delegated

Если остановиться на этом этапе, то созданное правило будет работать только на тех файлах и запросах, которые игнорирует kooboo, например mysite.ru/page.html или mysite.ru/pics.jpg (т.к. игнорирование html, рисунков и т.п. по умолчанию указано в роутерах kooboo). В остальных случаях будут стандартные asp-страницы ошибок, типа:

asp.net 404 error

Шаг 4

Теперь на уровне kooboo надо создать страницу (например error_404), желательно на пустом макете, в которой будет только одна строка (создаем представление с этим кодом и добавляем его на страницу):

@{
Response.StatusCode = 404;
}

Страница будет отдавать браузеру нужный статус ошибки.

Шаг 5

Теперь нужно настроить правило обработки этой ошибки в самом kooboo.

В списке настраиваемых ошибок (Custom error) добавляем строку со следующими настройками:

set custom 404 error on kooboo

Сам kooboo при такой настройке не отдает браузеру статус 404, поэтому мы и создали страницу error_404.

Теперь при 404 ошибке внутри kooboo, браузер сначала получит нужный код статуса (400, а не 200, если бы мы ничего не сделали), а затем этот статус перехватывает IIS, делает rewrite на указанный выше файл 404.html, который в свою очередь переадресует пользователя на нормальную красивую страницу ошибки.

Для справки:

  • http://www.iis.net/configreference/system.webserver/httperrors
  • http://serverfault.com/questions/401415/iis-7-returns-http-200-on-custom-404-error-page
  • http://serverfault.com/questions/53712/in-iis-7-how-do-i-set-up-a-default-error-document-for-any-error

©Элла (Автор: Элла С.)

Большинство ошибок, возникающих при валидации кода можно свести к набору типовых вариантов, зная которые легко понять, на что «намекает» валидатор. В качестве образца возьмем расширение HTML Validator для браузера Firefox, предназначенное для проверки кода и рассмотрим список ошибок и замечаний по коду.

Посмотреть все возможные сообщения валидатора можно по адресу http://www.htmlpedia.org/wiki/HTML_Tidy, далее приведены основные ошибки с их описанием и решением. Зеленым цветом выделен корректный вариант, другой цвет используется для обозначения ошибки.

Notice: entity «…» doesn’t end in «;»

Это замечание возникает при использовании спецсимволов вроде &lt; при отсутствии на конце точки с запятой.

&nbsp;

&nbsp

Решение

Добавьте в конце спецсимвола точку с запятой.

Notice: numeric character reference «…» doesn’t end in ‘;’

Возникает при использовании числовых спецсимволов вроде когда в конце забыли добавить точку с запятой.

&#8482

Решение

Добавьте в конце спецсимвола точку с запятой.

unescaped & or unknown entity «&…»

Символ амперсанда (&) часто применяется в адресах ссылок (атрибут href тега <a>), поскольку он разделяет несколько параметров. Однако амперсанд зарезервирован для спецсимволов вроде &nbsp; поэтому в ссылках необходимо указывать &amp; вместо &.

<a href=»http://www.htmlbook.ru/content/?id=30&amp;text=1″>Ссылка</a>

<a href=»http://www.htmlbook.ru/content/?id=30&text=1″>Ссылка</a>

Решение

Замените & на &amp;.

missing </…>

Отсутствует обязательный закрывающий тег.

<head><title>Заголовок</title></head>

<head><title>Заголовок</head>

Решение

Добавьте закрывающий тег.

missing </aaa> before <bbb>

Ошибка возникает при нарушении порядка тегов, когда блочный тег располагается внутри встроенного. В данном случае блочный тег <bbb> находится внутри встроенного тега <aaa>.

<p><span>Текст</span></p>

<span><p>Текст</p></span>

Решение

Поменяйте расположение тегов — перенесите встроенный тег внутрь блочного.

discarding unexpected <…>

Обнаружен открывающий или закрывающий тег, у которого нет пары. Подобная ошибка возникает в двух случаях: есть открывающий тег, но нет закрывающего; имеется закрывающий тег, которому не соответствует открывающий.

<div><div>Текст</div></div>

<div>Текст</div></div>

<div><div>Текст</div>

Решение

В зависимости от ситуации добавьте или удалите открывающий или закрывающий тег.

Notice: nested emphasis …

Контейнер содержит аналогичный тег физического форматирования, который не должен повторяться.

<p><b>Текст</b></p>

<p><b><b>Текст</b></b></p>

Решение

Удалите один из тегов.

replacing unexpected … by </…>

Закрывающий тег не соответствует открывающему тегу.

<p><b>Текст</b></p>

<p><b>Текст</span></p>

Решение

Замените открывающий или закрывающий тег на парный.

… isn’t allowed in <…> elements

Обнаружены теги, которые запрещено размещать внутри указанных элементов.

<head><title>Заголовок</title></head>

<head><body>Текст</body></head>

Решение

Переместите HTML-элемент в правильный раздел.

missing <…>

Нет обязательного тега в структуре элементов. Ошибка, к примеру, может возникнуть при формировании таблицы, когда пропущен тег <tr> и сразу же после <table> следует <td>.

<ol><li>Список</li></ol>

<ol>Список</ol>

Решение

Проверить правильность вложения тегов в текущем элементе и наличие обязательных элементов.

Notice: inserting implicit <…>

Сообщение возникает из-за предыдущей ошибки на странице.

Решение

Исправьте предыдущие ошибки.

Insert missing <title> element

В коде не вставлен тег <title>.

<head><title>Заголовок</title></head>

<head></head>

Решение

Добавьте контейнер <title>.

Multiple <frameset> elements

Тег <frameset> используется в документе более одного раза без вложения. Допускается вставлять несколько элементов <frameset>, но вложенных один в другой.

<frameset …><frame …>
<frameset …><frame …></frameset>
</frameset>

<frameset …><frame …></frameset>
<frameset …><frame …></frameset>

Решение

Используйте вложенные теги <frameset>.

<…> is not approved by W3C

Указанный тег не входит в спецификацию HTML.

<span style=»white-space: nowrap;»>текст без переносов</span>

<nobr>текст без переносов</nobr>

Решение

Удалите тег или замените его подходящим эквивалентом.

Error: <…> is not recognized!

Тег не распознан и не входит в спецификацию HTML.

Правильно: <p>Текст</p>

Неверно: <p><adres>Текст</adres></p>

Решение

Удалите неизвестный тег.

Trimming Empty Tag

Контейнер пустой или содержит только пробел.

<p>Текст</p>

<p>&nbsp;</p>

<p></p>

Решение

Удалите тег или добавьте внутрь контейнера текст.

<a> is probably intended as </a>

В закрывающем теге <a> отсутствует слэш.

<a href=»http://htmlbook.ru»>Ссылка на сайт</a>

<a href=»http://htmlbook.ru»>Ссылка на сайт<a>

Решение

Добавьте слэш к закрывающему тегу.

… shouldn’t be nested

Некоторые теги вроде <form> не могут содержать сами себя. Это сообщение также возникает из-за предыдущей ошибки.

<form action=»gb.php» name=»guestbook»></form>
<form action=»gb2.php» name=»guestbook2″></form>

<form action=»gb.php» name=»guestbook»>
<form action=»gb2.php» name=»guestbook2″></form>
</form>

Решение

Удалите вложенные теги или исправьте предыдущую ошибку.

Text found after closing </body>-tag

Теги или текст добавляется после закрывающего тега </body>.

<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной текст</p></body>
</html>

<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной текст</p></body>
 <b>Привет!</b>
</html>

Решение

Удалите текст после тега </body> или перенесите этот тег в конец текста.

Adjacent hyphens within comment

Комментарии в коде HTML определяются конструкцией вида <!— комментарий —>. Если в тексте комментария подряд идет два и более дефиса, возникает ошибка.

<!— Комментарий — заголовок —>

<!— комментарий —>

<!— Комментарий — тело документа —>

Решение

Удалите лишние дефисы.

SYSTEM, PUBLIC, W3C, DTD, EN must be upper case

Элемент <!DOCTYPE> указан неверно, в частности следующие атрибуты необходимо писать в верхнем регистре: SYSTEM, PUBLIC, W3C, DTD, EN.

<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN» «http://www.w3.org/TR/html4/loose.dtd»>

<!doctype html public «-//w3c//dtd html 4.01 Transitional//en» «http://www.w3.org/TR/html4/loose.dtd»>

Решение

Пишите <!DOCTYPE> корректно.

Warning: missing <!DOCTYPE> declaration

Не указан элемент <!DOCTYPE>.

<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01//EN» «http://www.w3.org/TR/html4/strict.dtd»>
<html>
<head>
<title>Заголовок</title>
</head>
<body>
<p>Основной текст</p>
</body>
</html>

<html>
<head>
<title>Untitled Document</title>
</head>
<body>
</body>
</html>

Решение

Поместите элемент <!DOCTYPE> в самую первую строку кода документа.

Too much <…>-elements

Повторяется тег, который в коде должен быть только один. К таким тегам относится <html>, <head>, <title> и <body>.

<head>
<title>Заголовок</title>
</head>

<head>
<title>Заголовок</title>
<title>Название статьи</title>
</head>

Решение

Удалите повторяющийся тег.

<…> inserting «…» attribute

Не указан обязательный атрибут для данного тега.

<style type=»text/css»>

<style>

Решение

Проверьте тег и добавьте недостающие атрибуты.

… attribute … lacks value

Атрибут тега не содержит обязательное значение или оно написано с синтаксической ошибкой.

<a href=»link.html»>Ссылка</a>

<a href>Ссылка</a>

Решение

Проверьте атрибуты тега и добавьте недостающие значения.

… attribute «…» has invalid value «…»

Атрибут содержит некорректное значение. Ошибка проявляется в тех случаях, когда в значении вместо текста пишется число и наоборот. Так, атрибуты id и name должны начинаться с символа ([A-Za-z]) и могут содержать цифры ([0-9]), дефис (-), подчеркивание (_), двоеточие (:) и точку (.). Значение ширины и высоты в атрибутах тегов не должно содержать ничего, кроме цифр ([0-9]) и процентов (%).

<div id=»layer1″>Слой 1</div>

<img src=»images/pic.gif» width=»200″ height=»120″>

<div id=»2layer»>Слой 2</div>

<img src=»images/pic.gif» width=»200px» height=»120px»>

Решение

Проверьте атрибут тега и измените его значение.

<…> missing > for end of tag

Ошибка может возникать в двух случаях: некорректно написан тег, что происходит, когда забыли добавить закрывающую скобку и применение > вместо использования спецсимвола.

<p>Пример текста</p>

<p>Для случая 0&lt;p рассмотрим следующий пример.</p>

<p Пример текста</p>

<p>Для случая 0<p рассмотрим следующий пример.</p>

Решение

Вставьте отсутствующую закрывающую скобку.
Замените < на &lt;.

<…> proprietary attribute «…»

Тег содержит атрибут, специфичный только для браузера Internet Explorer или другого и не входящий в спецификацию. Примером является атрибут height тега <table>.

Список всех атрибутов, входящих в спецификацию HTML приведен по адресу http://www.w3.org/TR/html4/index/attributes.html

<table style=»height: 100%»>

<table height=»100%»>

Решение

Список наиболее характерных атрибутов тегов приведен в табл. 14.1.

Табл. 14.1. Замена нестандартных атрибутов тегов

Тег Устаревший атрибут Стандартный атрибут
<body> marginwidth=0, marginheight=0, leftmargin=0, topmargin=0 style=»margin: 0″
<table> height=100% style=»height: 100%»
<table> nowrap style=»white-space: nowrap» или
<td nowrap>
<td> background=»abc.gif» style=»background-image:url(abc.gif)»

… proprietary attribute value «…»

Значение атрибута не входит в спецификацию HTML и является специфичным для браузера Internet Explorer или другого. Например, значение align=»absmiddle» тега <img> недопустимо.

<p><img src=»hello.gif» alt=»Привет» align=»middle»></p>

<p><img src=»hello.gif» alt=»Привет» style=»vertical-align: middle»></p>

<p><img src=»hello.gif» alt=»Привет» align=»absmiddle»></p>

Решение

Используйте стандартные значения атрибутов тегов или используйте стилевой эквивалент.

… dropping value «…» for repeated attribute «…»

Атрибут применяется в теге больше одного раза.

<img src=»image.jpg»>

<img src=»image.jpg» src=»image.jpg»>

Решение

Удалите повторяющийся атрибут.

… unexpected or duplicate quote mark

Отсутствует открывающая или закрывающая кавычка в атрибуте тега.

<img src=»image.jpg»>

<img src=image.jpg»>

Решение

Добавьте парную кавычку к значению атрибута.

… attribute with missing trailing quote mark

Тег содержит атрибут, в котором задано неверное количество кавычек.

<p id=»my_id»>

<p id=»my_id»»>

Решение

Добавьте или удалите одну из кавычек.

… id and name attribute value mismatch

Ошибка возникает, когда значения атрибутов id и name не совпадают между собой, что приводит к конфликту при обращении к свойствам элемента через скрипты.

<a name=»elm» id=»elm»>

<a id=»elm»>

<a name=»abcdef» id=»db1″>

Решение

Удалите один из атрибутов или сделайте значения атрибутов name и id одинаковыми.

Notice: replacing <…> by <…>

Ошибка возникает в следующих случаях:

  • неверный порядок тегов;
  • добавлен лишний закрывающий тег;
  • имеется открывающий тег без наличия обязательного закрывающего.

<p>Текст</p><br>

<p>Текст</p></p>

<p>abc<br><table>…</table></p>

Решение

Измените порядок тегов или удалите один из открывающих или закрывающих тегов.

… anchor «…» already defined

Значения атрибута name у различных тегов совпадает между собой. Значение name должно быть уникальным.

<form name=»my_form1″ action=»test1.php»></form>
<form name=»my_form2″ action=»test2.php»></form>

<form name=»my_form» action=»test1.php»></form>
<form name=»my_form» action=»test2.php»></form>

Решение

Выберите другое имя или измените предыдущие имена таким образом, чтобы они не совпадали.

<…> is probably intended as </…>

Тег повторяется дважды в коде HTML, тогда как подобный тег не должен содержать сам себя.

<em>Привет, мир!</em>

<em>Привет<em>, мир!</em></em>

Решение

Удалите один из тегов.

<…> lacks «…» attribute

Требуется обязательный атрибут тега, который, тем не менее, отсутствует.

<form action=»my_action.php»>

<form>

Решение

Добавьте недостающий атрибут к тегу.

Исправление Errors

Большинство Errors, возникающих при валидации тегов можно свести к набору типовых наборов, зная которые легко понять, на что «намекает» валидатор. В качестве образца возьмем расширение ШТМЛ Tidy для браузера Файер фох, предназначенное для сканирование тегов и просмотрим список Errors и замечаний по коду.

Посмотреть все возможные сообщения валидатора можно по адресу http://www.ШТМЛpedia.org/wiki/ШТМЛ_Tidy, далее приведены основные ошибки с их описанием и решением.

Notice: entity «…» doesn’t end in «;»

Это замечание возникает при использовании спецсимволов вроде &lt; при отсутствии на конце точки с запятой.

Правильно: &nbsp;.

Неверно: &nbsp.

Решение

Добавьте в конце спецсимвола точку с запятой.

Notice: numeric character reference «…» doesn’t end in ‘;’

Возникает при использовании числовых спецсимволов вроде когда в конце забыли добавляем точку с запятой.

Правильно: ™

Неверно: &#8482

Решение

Добавьте в конце спецсимвола точку с запятой.

unescaped & or unknown entity «&…»

Символ амперсанда (&) часто применяется в адресах ссылок (аргумент href тега <A>), поскольку он разделяет несколько параметров. Однако амперсанд зарезервирован для спецсимволов вроде &nbsp; поэтому в ссылках необходимо указывать &amp; вместо &.

Правильно: <a href=»http://www-html.ru/content/-id=30&amp;text=1.htm»>Ссылка</a>

Неверно: <a href=»http://www-html.ru/content/-id=30&text=1.htm»>Ссылка</a>

Решение

Замените & на &amp;

missing </…>

Отсутствует обязательный закрывающий тег.

Правильно: <head><title>Заголовок</title></head>

Неверно: <head><title>Заголовок</head>

Решение

Добавьте закрывающий тег.

missing </aaa> before <bbb>

Ошибка возникает при нарушении порядка тегов, когда блочный тег располагается внутри встроенного. В данном случае блочный тег <bbb> находится внутри встроенного тега <aaa>.

Правильно: <p><span>контент</span></p>

Неверно: <span><p>контент</p></span>

Решение

Поменяйте расположение тегов — перенесите встроенный тег внутрь блочного.

discarding unexpected <…>

Обнаружен открывающий или закрывающий тег, у которого нет пары. Подобная ошибка возникает в двух случаях: есть открывающий тег, но нет закрывающего; имеется закрывающий тег, которому не соответствует открывающий.

Правильно: <div><div>контент</div></div>

Неверно: <div>контент</div></div>

Неверно: <div><div>контент</div>

Решение

В зависимости от ситуации добавьте или удалите открывающий или закрывающий тег.

Notice: nested emphasis …

Контейнер содержит аналогичный тег физического форматирования, который не должен повторяться.

Правильно: <p><b>контент</b></p>

Неверно: <p><b><b>контент</b></b></p>

Решение

Удалите один из тегов.

replacing unexpected … by </…>

Закрывающий тег не соответствует открывающему тегу.

Правильно: <p><b>контент</b></p>

Неверно: <p><b>контент</span></p>

Решение

Замените открывающий или закрывающий тег на парный.

… isn’t allowed in <…> elements

Обнаружены теги, которые запрещено размещать внутри указанных элементов.

Правильно: <head><title>Заголовок</title></head>

Неверно: <head><body>контент</body></head>

Решение

Переместите ШТМЛ-элемент в правильный раздел.

missing <…>

Нет обязательного тега в структуре элементов. Ошибка, к примеру, может возникнуть при формировании таблицы, когда пропущен тег <TR> и сразу же после <TABLE> следует <TD>.

Правильно: <ol><li>Список</li></ol>

Неверно: <ol>Список</ol>

Решение

Проверить правильность вложения тегов в текущем элементе и наличие обязательных элементов.

Notice: inserting implicit <…>

Сообщение возникает из-за предыдущей ошибки на странице.

Решение

Исправьте предыдущие ошибки.

Insert missing <title> element

В коде не вставлен тег <TITLE>.

Правильно: <head><title>Заголовок</title></head>

Неверно: <head></head>

Решение

Добавьте контейнер <TITLE>

Multiple <frameset> elements

Тег <FRAMESET> используется более одного раза без вложения. Допускается вставлять несколько элементов <FRAMESET>, но вложенных один в другой.

Правильно: <frameset …><frame …>
<frameset …><frame …></frameset>
</frameset>

Неверно: <frameset …><frame …></frameset>
<frameset …><frame …></frameset>

Решение

Используйте вложенные теги <FRAMESET>.

<…> is not approved by W3C

Указанный тег не входит в спецификацию ШТМЛ.

Правильно: <span style=»white-space: nowrap;»>контент без переносов</span>

Неверно: <nobr>контент без переносов</nobr>

Решение

Удалите тег или замените его подходящим эквивалентом.

Error: <…> is not recognized!

Тег не распознан и не входит в спецификацию ШТМЛ.

Правильно: <p>контент</p>

Неверно: <p><adres>контент</adres></p>

Решение

Удалите неизвестный тег.

Trimming Empty Tag

Контейнер пустой или содержит только пробел.

Правильно: <p>контент</p>

Правильно: <p>&nbsp;</p>

Неверно: <p></p>

Решение

Удалите тег или добавьте внутрь контейнера контент.

<a> is probably intended as </a>

В закрывающем теге <A> отсутствует слэш.

Правильно: <a href=»http://www-html.ru»>Ссылка на сайт</a>

Неверно: <a href=»http://www-html.ru»>Ссылка на сайт<a>

Решение

Добавьте слэш к закрывающему тегу.

… shouldn’t be nested

Некоторые теги вроде <FORM> не могут содержать сами себя. Это сообщение также возникает из-за предыдущей ошибки.

Правильно: <form action=»gb.php» name=»guestbook»></form>
<form action=»gb2.php» name=»guestbook2″></form>

Неверно: <form action=»gb.php» name=»guestbook»>
<form action=»gb2.php» name=»guestbook2″></form>
</form>

Решение

Удалите вложенные теги или исправьте предыдущую ошибку.

Text found after closing </body>-tag

Теги или контент добавляется после закрывающего тега </body>.

Правильно:
<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной контент</p></body>
</html>

Неверно:
<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной контент</p></body>
 <b>Привет!</b>
</html>

Решение

Удалите контент после тега </body> или перенесите этот тег в конец контента.

Adjacent hyphens within comment

Комментарии в коде ШТМЛ определяются конструкцией вида <!— комментарий —>. Если в контенте комментария подряд идет два и более дефиса, возникает ошибка.

Правильно: <!— Комментарий — заголовок —>

Неверно: <!— комментарий —>

Неверно: <!— Комментарий — тело объекта —>

Решение

Удалите лишние дефисы.

SYSTEM, PUBLIC, W3C, DTD, EN must be upper case

Элемент DOCTYPE указан неверно, в частности следующие атрибуты необходимо писать в верхнем регистре: SYSTEM, PUBLIC, W3C, DTD, EN.

Правильно: <!DOCTYPE ШТМЛ PUBLIC «-//W3C//DTD ШТМЛ 4.01 Transitional//EN» «http://www.w3.org/TR/ШТМЛ4/loose.dtd»>

Неверно: <!doctype ШТМЛ public «-//w3c//dtd ШТМЛ 4.01 Transitional//en» «http://www.w3.org/TR/ШТМЛ4/loose.dtd»>

Решение

Пишите DOCTYPE корректно.

Warning: missing <!DOCTYPE> declaration

Не указан элемент DOCTYPE.

Правильно:
<!DOCTYPE ШТМЛ PUBLIC «-//W3C//DTD ШТМЛ 4.01//EN» «http://www.w3.org/TR/ШТМЛ4/strict.dtd»>
<html>
<head>
<title>Заголовок</title>
</head>
<body>
<p>Основной контент</p>
</body>
</html>

Неверно:
<html>
<head>
<title>Untitled Document</title>
</head>
<body>
</body>
</html>

Решение

Поместите элемент DOCTYPE в самую первую строку тегов объекта.

Too much <…>-elements

Повторяется тег, который в коде должен быть только один. К таким тегам относится <html>, <HEAD>, <TITLE> и <BODY>.

Правильно:
<head>
<title>Заголовок</title>
</head>

Неверно:
<head>
<title>Заголовок</title>
<title>Название Уроки</title>
</head>

Решение

Удалите повторяющийся тег.

<…> inserting «…» attribute

Не указан обязательный параметр для данного тега.

Правильно: <style type=»text/CSS (ЦСС)»>

Неверно: <style>

Решение

Проверьте параметры тега и добавьте недостающие атрибуты.

… attribute … lacks value

Параметр тега не содержит обязательное значение или оно написано с синтаксической ошибкой.

Правильно: <a href=»link.ШТМЛ»>Ссылка</a>

Неверно: <a href>Ссылка</a>

Решение

Проверьте параметры тега и добавьте недостающие значения.

… attribute «…» has invalid value «…»

Параметр содержит некорректное значение. Ошибка проявляется в тех случаях, когда в значении вместо контента пишется число и наоборот. Так, параметр id и name должен начинаться с символа ([A-Za-z]) и может содержать цифры ([0-9]), дефис (-), нижняя полоска в контенте (_), двоеточие (:) и точку (.). Значение ширины и высоты в параметрах тегов не должно содержать ничего, кроме цифр ([0-9]).

Правильно: <div id=»layer1″>Слой 1</div>

Правильно: <img src=»images/pic.gif» width=»200″ height=»120″>

Неверно: <div id=»2layer»>Слой 2</div>

Неверно: <img src=»images/pic.gif» width=»200px» height=»120px»>

Решение

Проверьте параметр тега и измените его значение.

<…> missing > for end of tag

Ошибка может возникать в двух случаях: некорректно написан тег, что происходит, когда забыли добавляем закрывающую скобку и применение < вместо использования спецсимвола.

Правильно: <p>Пример контента</p>

Правильно: <p>Для случая 0&lt;p просмотрим следующий пример.</p>

Неверно: <p Пример контента</p>

Неверно: <p>Для случая 0<p просмотрим следующий пример.</p>

Решение

Вставьте отсутствующую закрывающую скобку.
Замените < на &lt;.

<…> proprietary attribute «…»

Тег содержит параметр, специфичный только для браузера Nescape или Internet Эксплорер  и не входящий в спецификацию. Примером такого параметра является атрибут height тега <TABLE>.

Список всех атрибутов, входящих в спецификацию ШТМЛ приведен по адресу: http://www.w3.org/TR/ШТМЛ4/index/attributes.ШТМЛ

Правильно: <table style=»height: 100%»>

Неверно: <table height=»100%»>

Решение

Список наиболее характерных параметров тегов приведен в табл. 1.

Табл. 1. Замена нестандартных параметров тегов

Тег Устаревший параметр Стандартный параметр
<body> marginwidth=0, marginheight=0, leftmargin=0, topmargin=0 style=»margin: 0″
<table> height=100% style=»height: 100%»
<table> nowrap style=»white-space: nowrap» или
<td nowrap>
<td> background=»abc.gif» style=»background-image:url(abc.gif)»

… proprietary attribute value «…»

Значение параметра не входит в спецификацию ШТМЛ и является специфичным для браузера Nescape или Internet Эксплорер. Например, значение align=»absmiddle» тега <IMG> недопустимо.

Правильно: <p><img src=»hello.gif» alt=»Привет» align=»middle»></p>

Правильно: <p><img src=»hello.gif» alt=»Привет» style=»vertical-align: middle»></p>

Неверно: <p><img src=»hello.gif» alt=»Привет» align=»absmiddle»></p>

Решение

Используйте стандартные значения атрибутов тегов или используйте стилевой эквивалент.

… dropping value «…» for repeated attribute «…»

Параметр применяется в теге больше одного раза.

Правильно: <img src=»image.jpg»>

Неверно: <img src=»image.jpg» src=»image.jpg»>

Решение

Удалите повторяющийся параметр.

… unexpected or duplicate quote mark

Отсутствует открывающая или закрывающая кавычка в параметре тега.

Правильно: <img src=»image.jpg»>

Неверно: <img src=image.jpg»>

Решение

Добавьте парную кавычку к значению параметра.

… attribute with missing trailing quote mark

Тег содержит параметр, в котором задано неверное количество кавычек.

Правильно: <p id=»my_id»>

Неверно: <p id=»my_id»»>

Решение

Добавьте или удалите одну из кавычек.

… id and name attribute value mismatch

Ошибка возникает, когда значения параметров id и name не совпадают между собой, что приводит к конфликту при обращении к свойствам элемента через скрипты.

Правильно: <a name=»elm» id=»elm»>

Правильно: <a id=»elm»>

Неверно: <a name=»abcd» id=»db1″>

Решение

Удалите один из параметров или сделайте значения атрибутов name и id одинаковыми.

Notice: replacing <…> by <…>

Ошибка возникает в следующих случаях:

  • неверный порядок тегов;
  • добавлен лишний закрывающий тег;
  • имеется открывающий тег без наличия обязательного закрывающего.

Правильно: <p>контент</p><br>

Неверно: <p>контент</p></p>

Неверно: <p>abc<br><table>…</table></p>

Решение

Измените порядок тегов или удалите один из открывающих или закрывающих тегов.

… anchor «…» already defined

Значения параметра name у различных тегов совпадает между собой. Значение name должно быть уникальным.

Правильно: <form name=»my_form1″ action=»test1.php»></form>
<form name=»my_form2″ action=»test2.php»></form>

Неверно: <form name=»my_form» action=»test1.php»></form>
<form name=»my_form» action=»test2.php»></form>

Решение

Выберите другое имя или измените предыдущие имена таким образом, чтобы они не совпадали.

<…> is probably intended as </…>

Тег повторяется дважды в коде ШТМЛ, тогда как подобный тег содержать сам себя.

Правильно: <em>Привет, мир!</em>

Неверно: <em>Привет<em>, мир!</em></em>

Решение

Удалите один из тегов.

<…> lacks «…» attribute

Требуется обязательный параметр тега, который, тем не менее, отсутствует.

Правильно: <form action=»my_action.php»>

Неверно: <form>

Решение

Добавьте недостающий атрибут к тегу.

Статья опубликована: 06.08.2009 Последнее обновление: 06.08.2009

Большинство ошибок, возникающих при валидации кода можно свести к набору типовых вариантов, зная которые легко понять, на что «намекает» валидатор. В качестве образца возьмем расширение HTML Validator для браузера Firefox, предназначенное для проверки кода и рассмотрим список ошибок и замечаний по коду.

Посмотреть все возможные сообщения валидатора можно по адресу http://www.htmlpedia.org/wiki/HTML_Tidy, далее приведены основные ошибки с их описанием и решением. Зеленым цветом выделен корректный вариант, другой цвет используется для обозначения ошибки.

Notice: entity «…» doesn’t end in «;»

Это замечание возникает при использовании спецсимволов вроде &lt; при отсутствии на конце точки с запятой.

&nbsp;

&nbsp

Решение

Добавьте в конце спецсимвола точку с запятой.

Notice: numeric character reference «…» doesn’t end in ‘;’

Возникает при использовании числовых спецсимволов вроде когда в конце забыли добавить точку с запятой.

&#8482

Решение

Добавьте в конце спецсимвола точку с запятой.

unescaped & or unknown entity «&…»

Символ амперсанда (&) часто применяется в адресах ссылок (атрибут href тега <a>), поскольку он разделяет несколько параметров. Однако амперсанд зарезервирован для спецсимволов вроде &nbsp; поэтому в ссылках необходимо указывать &amp; вместо &.

<a href=»http://www.htmlbook.ru/content/?id=30&amp;text=1″>Ссылка</a>

<a href=»http://www.htmlbook.ru/content/?id=30&text=1″>Ссылка</a>

Решение

Замените & на &amp;.

missing </…>

Отсутствует обязательный закрывающий тег.

<head><title>Заголовок</title></head>

<head><title>Заголовок</head>

Решение

Добавьте закрывающий тег.

missing </aaa> before <bbb>

Ошибка возникает при нарушении порядка тегов, когда блочный тег располагается внутри встроенного. В данном случае блочный тег <bbb> находится внутри встроенного тега <aaa>.

<p><span>Текст</span></p>

<span><p>Текст</p></span>

Решение

Поменяйте расположение тегов — перенесите встроенный тег внутрь блочного.

discarding unexpected <…>

Обнаружен открывающий или закрывающий тег, у которого нет пары. Подобная ошибка возникает в двух случаях: есть открывающий тег, но нет закрывающего; имеется закрывающий тег, которому не соответствует открывающий.

<div><div>Текст</div></div>

<div>Текст</div></div>

<div><div>Текст</div>

Решение

В зависимости от ситуации добавьте или удалите открывающий или закрывающий тег.

Notice: nested emphasis …

Контейнер содержит аналогичный тег физического форматирования, который не должен повторяться.

<p><b>Текст</b></p>

<p><b><b>Текст</b></b></p>

Решение

Удалите один из тегов.

replacing unexpected … by </…>

Закрывающий тег не соответствует открывающему тегу.

<p><b>Текст</b></p>

<p><b>Текст</span></p>

Решение

Замените открывающий или закрывающий тег на парный.

… isn’t allowed in <…> elements

Обнаружены теги, которые запрещено размещать внутри указанных элементов.

<head><title>Заголовок</title></head>

<head><body>Текст</body></head>

Решение

Переместите HTML-элемент в правильный раздел.

missing <…>

Нет обязательного тега в структуре элементов. Ошибка, к примеру, может возникнуть при формировании таблицы, когда пропущен тег <tr> и сразу же после <table> следует <td>.

<ol><li>Список</li></ol>

<ol>Список</ol>

Решение

Проверить правильность вложения тегов в текущем элементе и наличие обязательных элементов.

Notice: inserting implicit <…>

Сообщение возникает из-за предыдущей ошибки на странице.

Решение

Исправьте предыдущие ошибки.

Insert missing <title> element

В коде не вставлен тег <title>.

<head><title>Заголовок</title></head>

<head></head>

Решение

Добавьте контейнер <title>.

Multiple <frameset> elements

Тег <frameset> используется в документе более одного раза без вложения. Допускается вставлять несколько элементов <frameset>, но вложенных один в другой.

<frameset …><frame …>
<frameset …><frame …></frameset>
</frameset>

<frameset …><frame …></frameset>
<frameset …><frame …></frameset>

Решение

Используйте вложенные теги <frameset>.

<…> is not approved by W3C

Указанный тег не входит в спецификацию HTML.

<span style=»white-space: nowrap;»>текст без переносов</span>

<nobr>текст без переносов</nobr>

Решение

Удалите тег или замените его подходящим эквивалентом.

Error: <…> is not recognized!

Тег не распознан и не входит в спецификацию HTML.

Правильно: <p>Текст</p>

Неверно: <p><adres>Текст</adres></p>

Решение

Удалите неизвестный тег.

Trimming Empty Tag

Контейнер пустой или содержит только пробел.

<p>Текст</p>

<p>&nbsp;</p>

<p></p>

Решение

Удалите тег или добавьте внутрь контейнера текст.

<a> is probably intended as </a>

В закрывающем теге <a> отсутствует слэш.

<a href=»http://htmlbook.ru»>Ссылка на сайт</a>

<a href=»http://htmlbook.ru»>Ссылка на сайт<a>

Решение

Добавьте слэш к закрывающему тегу.

… shouldn’t be nested

Некоторые теги вроде <form> не могут содержать сами себя. Это сообщение также возникает из-за предыдущей ошибки.

<form action=»gb.php» name=»guestbook»></form>
<form action=»gb2.php» name=»guestbook2″></form>

<form action=»gb.php» name=»guestbook»>
<form action=»gb2.php» name=»guestbook2″></form>
</form>

Решение

Удалите вложенные теги или исправьте предыдущую ошибку.

Text found after closing </body>-tag

Теги или текст добавляется после закрывающего тега </body>.

<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной текст</p></body>
</html>

<html>
 <head><title>Заголовок</title></head>
 <body><p>Основной текст</p></body>
 <b>Привет!</b>
</html>

Решение

Удалите текст после тега </body> или перенесите этот тег в конец текста.

Adjacent hyphens within comment

Комментарии в коде HTML определяются конструкцией вида <!— комментарий —>. Если в тексте комментария подряд идет два и более дефиса, возникает ошибка.

<!— Комментарий — заголовок —>

<!— комментарий —>

<!— Комментарий — тело документа —>

Решение

Удалите лишние дефисы.

SYSTEM, PUBLIC, W3C, DTD, EN must be upper case

Элемент <!DOCTYPE> указан неверно, в частности следующие атрибуты необходимо писать в верхнем регистре: SYSTEM, PUBLIC, W3C, DTD, EN.

<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN» «http://www.w3.org/TR/html4/loose.dtd»>

<!doctype html public «-//w3c//dtd html 4.01 Transitional//en» «http://www.w3.org/TR/html4/loose.dtd»>

Решение

Пишите <!DOCTYPE> корректно.

Warning: missing <!DOCTYPE> declaration

Не указан элемент <!DOCTYPE>.

<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01//EN» «http://www.w3.org/TR/html4/strict.dtd»>
<html>
<head>
<title>Заголовок</title>
</head>
<body>
<p>Основной текст</p>
</body>
</html>

<html>
<head>
<title>Untitled Document</title>
</head>
<body>
</body>
</html>

Решение

Поместите элемент <!DOCTYPE> в самую первую строку кода документа.

Too much <…>-elements

Повторяется тег, который в коде должен быть только один. К таким тегам относится <html>, <head>, <title> и <body>.

<head>
<title>Заголовок</title>
</head>

<head>
<title>Заголовок</title>
<title>Название статьи</title>
</head>

Решение

Удалите повторяющийся тег.

<…> inserting «…» attribute

Не указан обязательный атрибут для данного тега.

<style type=»text/css»>

<style>

Решение

Проверьте тег и добавьте недостающие атрибуты.

… attribute … lacks value

Атрибут тега не содержит обязательное значение или оно написано с синтаксической ошибкой.

<a href=»link.html»>Ссылка</a>

<a href>Ссылка</a>

Решение

Проверьте атрибуты тега и добавьте недостающие значения.

… attribute «…» has invalid value «…»

Атрибут содержит некорректное значение. Ошибка проявляется в тех случаях, когда в значении вместо текста пишется число и наоборот. Так, атрибуты id и name должны начинаться с символа ([A-Za-z]) и могут содержать цифры ([0-9]), дефис (-), подчеркивание (_), двоеточие (:) и точку (.). Значение ширины и высоты в атрибутах тегов не должно содержать ничего, кроме цифр ([0-9]) и процентов (%).

<div id=»layer1″>Слой 1</div>

<img src=»images/pic.gif» width=»200″ height=»120″>

<div id=»2layer»>Слой 2</div>

<img src=»images/pic.gif» width=»200px» height=»120px»>

Решение

Проверьте атрибут тега и измените его значение.

<…> missing > for end of tag

Ошибка может возникать в двух случаях: некорректно написан тег, что происходит, когда забыли добавить закрывающую скобку и применение > вместо использования спецсимвола.

<p>Пример текста</p>

<p>Для случая 0&lt;p рассмотрим следующий пример.</p>

<p Пример текста</p>

<p>Для случая 0<p рассмотрим следующий пример.</p>

Решение

Вставьте отсутствующую закрывающую скобку.
Замените < на &lt;.

<…> proprietary attribute «…»

Тег содержит атрибут, специфичный только для браузера Internet Explorer или другого и не входящий в спецификацию. Примером является атрибут height тега <table>.

Список всех атрибутов, входящих в спецификацию HTML приведен по адресу http://www.w3.org/TR/html4/index/attributes.html

<table style=»height: 100%»>

<table height=»100%»>

Решение

Список наиболее характерных атрибутов тегов приведен в табл. 14.1.

Тег Устаревший атрибут Стандартный атрибут
<body> marginwidth=0, marginheight=0, leftmargin=0, topmargin=0 style=»margin: 0″
<table> height=100% style=»height: 100%»
<table> nowrap style=»white-space: nowrap» или
<td nowrap>
<td> background=»abc.gif» style=»background-image:url(abc.gif)»

Табл. 14.1. Замена нестандартных атрибутов тегов

… proprietary attribute value «…»

Значение атрибута не входит в спецификацию HTML и является специфичным для браузера Internet Explorer или другого. Например, значение align=»absmiddle» тега <img> недопустимо.

<p><img src=»hello.gif» alt=»Привет» align=»middle»></p>

<p><img src=»hello.gif» alt=»Привет» style=»vertical-align: middle»></p>

<p><img src=»hello.gif» alt=»Привет» align=»absmiddle»></p>

Решение

Используйте стандартные значения атрибутов тегов или используйте стилевой эквивалент.

… dropping value «…» for repeated attribute «…»

Атрибут применяется в теге больше одного раза.

<img src=»image.jpg»>

<img src=»image.jpg» src=»image.jpg»>

Решение

Удалите повторяющийся атрибут.

… unexpected or duplicate quote mark

Отсутствует открывающая или закрывающая кавычка в атрибуте тега.

<img src=»image.jpg»>

<img src=image.jpg»>

Решение

Добавьте парную кавычку к значению атрибута.

… attribute with missing trailing quote mark

Тег содержит атрибут, в котором задано неверное количество кавычек.

<p id=»my_id»>

<p id=»my_id»»>

Решение

Добавьте или удалите одну из кавычек.

… id and name attribute value mismatch

Ошибка возникает, когда значения атрибутов id и name не совпадают между собой, что приводит к конфликту при обращении к свойствам элемента через скрипты.

<a name=»elm» id=»elm»>

<a id=»elm»>

<a name=»abcdef» id=»db1″>

Решение

Удалите один из атрибутов или сделайте значения атрибутов name и id одинаковыми.

Notice: replacing <…> by <…>

Ошибка возникает в следующих случаях:

  • неверный порядок тегов;
  • добавлен лишний закрывающий тег;
  • имеется открывающий тег без наличия обязательного закрывающего.

<p>Текст</p><br>

<p>Текст</p></p>

<p>abc<br><table>…</table></p>

Решение

Измените порядок тегов или удалите один из открывающих или закрывающих тегов.

… anchor «…» already defined

Значения атрибута name у различных тегов совпадает между собой. Значение name должно быть уникальным.

<form name=»my_form1″ action=»test1.php»></form>
<form name=»my_form2″ action=»test2.php»></form>

<form name=»my_form» action=»test1.php»></form>
<form name=»my_form» action=»test2.php»></form>

Решение

Выберите другое имя или измените предыдущие имена таким образом, чтобы они не совпадали.

<…> is probably intended as </…>

Тег повторяется дважды в коде HTML, тогда как подобный тег не должен содержать сам себя.

<em>Привет, мир!</em>

<em>Привет<em>, мир!</em></em>

Решение

Удалите один из тегов.

<…> lacks «…» attribute

Требуется обязательный атрибут тега, который, тем не менее, отсутствует.

<form action=»my_action.php»>

<form>

Решение

Добавьте недостающий атрибут к тегу.

..или страница которой нет!

Прежде чем создавать страницу ошибки 404 давайте сначала разберёмся что это вообще за ошибка такая..

Ошибка 404 или Not Found — не найдено.. это стандартный код ответа HTTP о том, что страницы, к которой обращается пользователь, нет на сервере.. попросту она не существует.

Возникать данная ошибка может в ряде случаев:

  • Ссылка, по которой пришёл пользователь, неверна.

  • Пользователь неправильно указал путь в адресной строке к одной из страниц Вашего сайта.

  • Ранее существовавшая страница Вами уже удалена или переименована, однако всё ещё существует в индексе поисковых систем или закладках пользователей.

Что увидит пользователь в результате этой ошибки?

В лучшем случае страницу с рекламой Вашего хостера и кратким объяснением что мол Вы «не туда попали».. в худшем это будет просто надпись: 404 Not Found — The requested URL /page.html was not found on this server — собственно «Запрашиваемый URL отсутствует на этом сервере».

Теперь представьте, что сделает пользователь когда увидит эту картину? Правильно!! закроет эту страницу и пойдёт искать интересующую его информацию в другом месте!! — в результате чего Вы потеряете целевого посетителя!

В этом уроке мы займёмся тем что создадим свою собственную пользовательскую страницу ошибки 404 — Которая в отличии от стандартных страниц ошибки будет иметь ряд несомненных преимуществ:

  • Данная страница будет содержать элементы дизайна Вашего сайта — тем самым даст понять посетителю что, несмотря на то что он попал не совсем туда куда хотел он всё таки попал именно на Ваш сайт!

  • Пользовательская страница 404, в отличие от стандартных, не будет «тупиковой», а на ней будут располагаться ссылки на основные страницы сайта.. — Что позволит посетителю двигаться дальше и тем самым удержит его на Вашем сайте.

  • Ну и в конце концов на такой странице можно дать вразумительные объяснения того по каким причинам пользователь оказался на ней.. предложить ему выход из сложившейся ситуации.. помочь найти на Вашем сайте интересующую его информацию.

Как видите сплошные плюсы..

Создаётся страница ошибки 404 точно так же как и любая другая страница на Вашем сайте.. никаких нюансов в коде странице нет..

Ну например создадим файл с именем 404.html

<html>
<head>
<title>Ошибка 404</title>
</head>
<body>
<img src=»graphics/404.gif» alt=»Ошибка 404″>
<p>К сожалению, запрашиваемая Вами страница не найдена..</p>
<p>Почему?</p>
<ol>
<li>Ссылка, по которой Вы пришли, неверна.
<li>Вы неправильно указали путь или название страницы.
<li>Страница была удалёна со времени Вашего последнего посещения.
</ol>
<p>Для продолжения работы с сайтом Вы можете воспользоваться формой поиска по сайту:</p>
<form>
<input type=»text» size=»30″>
<input type=»submit» value=»Поиск»>
</form>
<p>..или перейти на:</p>
<ul>
<li><a href=»#»>Главную страницу сайта.</a>
<li><a href=»#»>Карту сайта</a>
</ul>
</body>
</html>

На самом деле это просто страничка «скелет» конечно же Вам следует создать свою собственную, полноценную страницу ошибки 404.

Создали? а вот теперь поговорим о нюансах..

Для того что бы в случае возникновения ошибки с кодом 404 посетитель переходил на только что созданную нами страницу, необходимо создать системный файл .htaccess который будет содержать в себе директиву: ErrorDocument 404 — это директива указывает серверу о том куда следует перенаправлять пользователя в случае возникновения ошибки 404.

Что это за файл такой спросите Вы?

Файл .htaccess (я не опечатался, пишется с точкой в начале имени и не использует никакого расширения) – дает возможность конфигурировать работу сервера в отдельных его директориях..

На данный файл может быть возложен ряд специфических задач.. например: устанавливать права доступа к файлам в папке, менять названия индексных файлов, глобально перенаправлять посетителей на другой сайт, запретить доступ к сайту с определённого ip адреса… и еще много всяких иногда очень полезных вещей может делать этот чудо файл.. в том числе может самостоятельно обрабатывать ошибки сервера — что нам собственно и нужно!

Однако углубляться во все подробности и тонкости мы не будем, а поговорим лишь о том, что нас интересует на данный момент.

Итак, создаём файл под названием .htaccess который содержит в себе одну единственную строчку (если таковой файл уже имеется с какими ни будь другими инструкциями серверу, то просто дописываем в него эту строчку):

ErrorDocument 404 http://www.site.ru/404.html

И заливаем его на сервер в корневую папку сайта.

Ну только естественно сначала поменяйте в файле .htaccess ссылку http://www.site.ru/404.html на адрес Вашей собственной страницы которая должна будет открываться при возникновении ошибки 404.

Вот собственно и всё! теперь если Вы всё сделали правильно, при возникновении ошибки 404 будет загружаться Ваша «ошибочная» страница.

Сейчас огорчу тех кто располагает свой сайт на том или ином бесплатном хостинге.. Большинство бесплатных хостеров не дают доступа к файлу .htaccess так что создать страницу 404 на бесплатном хостинге вряд ли удастся.


P.S.Таким же способом с помощью файла .htaccess Вы можете обрабатывать и другие ошибки сервера:

  • 401 ошибка(ErrorDocument 401 http://www.site.ru/page.html)- Требуется авторизация.
  • 403 ошибка(ErrorDocument 403 http://www.site.ru/page.html)- Пользователь не прошел аутентификацию, доступ запрещен.
  • 500 ошибка(ErrorDocument 500 http://www.site.ru/page.html)- Внутренняя ошибка сервера.

Если что-то непонятно или Вы в чем-то сомневаетесь, то за дополнительными разъяснениями обращайтесь на форум.

Здравствуйте, читатели моего блога!

Наверняка, вы хотя бы раз переходили по нужной ссылке и оказывались на web-странице, которая указывает на ошибку 404!

А задумывались ли вы, что ее тоже кто-то создает? Да?! Вам тоже нужна такая страница для сайта? Давайте о ней и поговорим!

Вступление

Такая ошибка еще именуется Not Found и имеет свои особенности. Как это понимать? — Запрашиваемой интернет-страницы не существует на сервере и об этом вы получаете уведомление.

Несколько причин такой ситуации:

  • веб-страница удалена, но поисковые системы еще об этом не знают;
  • неверно указан путь непосредственно в адресной строке.
  • материал был перемещен в другую категорию, тем самым изменился адрес интернет-страницы, но в результатах поискового запроса еще остался предыдущий URL.
  • ситуация, как в предыдущем варианте, но был осуществлен переход по ссылке непосредственно на веб-сайте (такие интернет-ссылки называются «битыми»).
  • на сервере произошел какой-то сбой именно в тот момент, когда интернет-браузер посылал HTTP-запрос.

Когда посетитель ресурса переходит по такой ссылке, то он может обнаружить рекламу того или иного хостинг-провайдера, дополненную некоторыми краткими пояснениями. Также на экране часто высвечивается такое:  «404 Not Found» или «Запрашиваемый вами URL отсутствует на данном сервере».

Как вы думаете, что предпримет пользователь, попав на подобную площадку? Естественно, тут же закроет ее! Но как сделать такую страницу 404, на которой человек задержится и не покинет сайт? Возможно ли такое? Да, если она оформлена правильно и имеет привлекательный дизайн!

Вы можете создать веб-страницу Not Found, которая будет обладать целым перечнем преимуществ.

Ею можно:

  • Объяснить причину попадания на эту интернет-страницу;
  • Подсказать, что сделать, чтобы найти искомое;
  • Предложить перейти на главную web-страницу вашего ресурса.
  • Привлечь внимание пользователей к самому сайту, популярным материалам или рекламному объявлению;

Создается подобная красивая страница довольно просто.

Принцип разработки

Мой блог находится на платформе wordpress (WP). Я уже рассказывал, как установить WP на свой сайт. Когда Вордпресс встречается с «Ошибкой 404», он автоматически начинает искать файл 404.php. Но не все шаблоны имеют этот файл по умолчанию. При отсутствии этого файла пользователю выдается обычное сообщение об ошибке, которое, в свою очередь, не отличается особой привлекательностью.

Если у вас до сих пор нет такого файла, самое время им обзавестись. Создайте новый файл и сохраните его под названием «404.php» в папочке с темой вашего сайта.

Рекомендую использовать примерно такой html-код:

<html>
 
<head>
<title>Ошибка 404</title>
</head>
<body>
<p>Извините, но запрашиваемая веб-страница не найдена.</p>
<p>Возможные причины:</p>
<ol>
<li>Интернет-ссылка перехода неверна.
<li>Вы указали ошибочный URL.
<li>Веб-страница удалена.
</ol>
<p>Хотите продолжить работу с web-сайтом? Тогда воспользуйтесь формой поиска:</p>
<form>
<input type="text" size="25">
<input type="submit" value="Поиск">
</form>
<p>или перейдите на:</p>
<ul>
<li><a href="#">Главную страницу сайта</a>
<li><a href="#">Карту сайта</a>
</ul>
</body>
</html>

Выше вам была предложена просто схема, своеобразный скелет, который можно взять за основу. При этом вы всегда можете создать собственный уникальный вариант.

Но если вы не владеете языками html и php, то лучше наймите фрилансера-верстальщика, который вам всё сделает за небольшую плату. Искать их лучше здесь:

  1. FL.ru
  2. WebLancer.net

Страница 404 средствами .htaccess

Этот метод можно использовать для любых веб-сайтов (статических и динамических), если в их движках нет встроенных средств для создания интернет-страницы с ошибкой.

Найдите или создайте файл .htaccess в корне вашего веб-ресурса и пропишите:

ErrorDocument 404 /404.php

Не забудьте в папку c файлом .htaccess положить тот файл 404.html, который мы создали по примеру выше.

Можно написать так:

ErrorDocument 404 «404 page not found.»

При таком варианте будет просто выводится текст, который указан в кавычках. Тогда никакой файлик 404.php не нужен. Не желаете заморачиваться? Тогда этот вариант для вас!

Я думаю вы много нового узнали из этой статьи, неправда ли?! Также рекомендую почитать рекомендации яндекса по продвижению сайтов. Подписывайтесь на обновления блога и еще много интересной, а главное — полезной информации сможете узнать. Делитесь ссылками на статьи с друзьями через социальные сети и обсуждайте волнующие вас темы. До встречи!

С уважением! Абдуллин Руслан

Загрузка…

Понравился блог? Подпишись, чтобы получать новые статьи на почту и быть в курсе всех событий!

Версия Kooboo на момент написания статьи: 4.2.1

Другое ПО: IIS 8 (7 или 7.5)

Описание задачи: в момент возникновения ошибки на сайте Kooboo (на примере 404 ошибки) выдавать браузеру правильный статус ошибки, а пользователю показывать красивую страницу с ошибкой.

Описание проблемы: встроенные механизмы Kooboo позволяют настроить редирект при возникновении ошибки, но не выдают браузеру правильный код (всегда выдается код статуса 200, вместо, например, 404). Помимо этого роутеры Kooboo игнорируют некоторые типы файлов, вроде html, jpg и т.п. — для них необходимо отдельно настраивать редиректы на страницу с ошибкой.

Решение задачи кратко:

1) для файлов, игнорируемых kooboo, настроим редирект на kooboo-страницу с ошибкой через IIS (IIS в этом случае сам передает браузеру правильный код ошибки).

2) для всех остальных страниц сайта сделаем настройку в Kooboo, которая будет выдавать сначала код ошибки браузеру, а затем делать редирект на страницу с ошибкой.

Шаг 1

Итак, для начала создадим ту самую красивую страницу с ошибкой, которую будем показывать пользователю.

Соответственно дизайну нашего сайта создаем в Kooboo страницу, назовем ее к примеру, «error«. На ней размещаем нужную для пользователя информацию, чтобы он не ушел с нашего сайта из-за произошедшей ошибки.

В настройках этой страницы на вкладке «Маршрут URL (URL Route)» в поле «Путь URL (URL path)» добавляем параметр — {status} (через него мы будем передавать код ошибки для метрик и статистики):

set url route for kooboo

Шаг 2

Далее создадим html-файл для редиректа. Назовем его к примеру 404.html. Он будет содержать следующий код:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
    <title>404 error</title>
    <meta http-equiv="Content-Type" content="text/html; harset=windows-1251">
</head>
<script language="JavaScript">
<!--
 self.location="/error/404?url=" + self.location;
// --> 
</script>
<body>
Пожалуйста, нажмите <a href="http://mysite.ru">здесь,</a> 
чтобы перейти на главную cтраницу сайта.
</body>
</html>

Здесь главное — это строка:  self.location=»/error/404?url=» + self.location;

Остальное заполняем по желанию. Например, в теле страницы можно добавить ссылку на страницу вашего сайта, если вдруг скрипт переадресации не сработает.

Эта страница делает редирект на красивую страницу с ошибкой «error», которую мы создали в Kooboo (а в адресе параметром идет неверный URL, чтобы метрики могли собрать статистику по подобным обращениям).

Файл 404.html размещаем в корне нашего сайта (т.е. он должен, к примеру, отвечать по адресу http://mysite.ru/404.html).

Шаг 3

Настраиваем IIS для показа страницы 404.html при возникновении ошибки.

Для этого в настройках сайта в IIS переходим по кнопке «Error Pages» и редактируем строку со статусом ошибки 404:

edit custom error page in IIS 7

Мы не может выбрать способы 2 или 3, т.к. они выдают статусы 200. Только первая настройка выдает 404 код ошибки браузеру, но по-умолчанию на уровне IIS 7.5 запрещены абсолютные пути к файлам. Поэтому нужно дополнительно их разрешить.

Установка параметра, разрешающего абсолютные пути для страниц ошибок:

Нужно установить значение true для параметра — allowAbsolutePathsWhenDelegated

Делается это на уровне IIS в «Configuration Editor» на ветке «system.webServer/httpErrors«:

allow Absolute Paths When Delegated

Если остановиться на этом этапе, то созданное правило будет работать только на тех файлах и запросах, которые игнорирует kooboo, например mysite.ru/page.html или mysite.ru/pics.jpg (т.к. игнорирование html, рисунков и т.п. по умолчанию указано в роутерах kooboo). В остальных случаях будут стандартные asp-страницы ошибок, типа:

asp.net 404 error

Шаг 4

Теперь на уровне kooboo надо создать страницу (например error_404), желательно на пустом макете, в которой будет только одна строка (создаем представление с этим кодом и добавляем его на страницу):

@{
Response.StatusCode = 404;
}

Страница будет отдавать браузеру нужный статус ошибки.

Шаг 5

Теперь нужно настроить правило обработки этой ошибки в самом kooboo.

В списке настраиваемых ошибок (Custom error) добавляем строку со следующими настройками:

set custom 404 error on kooboo

Сам kooboo при такой настройке не отдает браузеру статус 404, поэтому мы и создали страницу error_404.

Теперь при 404 ошибке внутри kooboo, браузер сначала получит нужный код статуса (400, а не 200, если бы мы ничего не сделали), а затем этот статус перехватывает IIS, делает rewrite на указанный выше файл 404.html, который в свою очередь переадресует пользователя на нормальную красивую страницу ошибки.

Для справки:

  • http://www.iis.net/configreference/system.webserver/httperrors
  • http://serverfault.com/questions/401415/iis-7-returns-http-200-on-custom-404-error-page
  • http://serverfault.com/questions/53712/in-iis-7-how-do-i-set-up-a-default-error-document-for-any-error

©Элла (Автор: Элла С.)

You close your head on the second line, no wonder browsers try to guess what you actually ment.

answered Aug 12, 2011 at 16:00

Spadar Shut's user avatar

Spadar ShutSpadar Shut

15k5 gold badges46 silver badges53 bronze badges

The head tag only contains a meta tag for the content type. You have put everything else in the body, it’s not something that the browser does.

answered Aug 12, 2011 at 16:03

Guffa's user avatar

GuffaGuffa

683k108 gold badges732 silver badges999 bronze badges

Your page is malformed. Meta and title tags go in the head section, not the body.

  <html>
  <head>
    <title>Your title here</title>
    <meta name="name goes here" value="correct location of a meta tag (in the head)">
  </head>
  <body>
    <meta name="bad" value="wrong location of a meta tag (in the body)">
    <title>Wrong location of the title tag</title>
  </body>
  </html>

answered Aug 12, 2011 at 16:13

DwB's user avatar

DwBDwB

36.6k11 gold badges57 silver badges82 bronze badges

Rocket Validator integrates the W3C Validator HTML checker
into an automated web crawler.

  • stray

  • start tag

  • head

A <head> start tag has been found in an unexpected place in the document structure. Check that the <head> section appears before the <body> section, and that is not duplicated.

The <head> section of an HTML document is the container of metadata about the document, and must appear before the <body> section. A common cause of this issue is duplicated <head> sections.

Here is an example of a minimal HTML document structure:

<!DOCTYPE html>
<html>
  <head>
    <title>Test</title>
  </head>
  <body>
    <p></p>
  </body>
</html>

Related W3C validator issues

I was watching tutorials about html for beginners and tried to make a simple html file.
when I open this on google chrome the body «hello» is showing up but the title part «first page» doesn’t. Did I type something wrong? thanks in advance for your response.

//I apologies for those of you who already answered this. I now see that I have made a mistake on explaining my problem. I meant to show it as a header not title. I already got the answer from the given answers//

<html>
<head> 
   <title> first page </title>
</head>

<body> 
hello

</body>

</html>

asked Mar 26, 2013 at 6:23

1

Where do you expect title to be shown?

Title is what usually is displayed in the tab bar of your browser, or as text in your window switcher in your operating system. It does not show up inside your webpage.

Your markup seems to be correct, just look for the title in the browser window.

If you meant to make a title (in the meaning of a large text displaying in your website) one way of doing this is to, below your body-tag, write

<h1>Title here</h1>.

answered Mar 26, 2013 at 6:27

igr's user avatar

igrigr

4,4692 gold badges15 silver badges20 bronze badges

1

<title> is not showing in web page; it is shown in Tab / Window’s title.

Suggested to learn the basic HTML structure first.

answered Mar 26, 2013 at 6:24

Raptor's user avatar

RaptorRaptor

53k44 gold badges227 silver badges361 bronze badges

i think you want a header

<html>
<head> 
   <title>my page </title>
</head>

<body> 

<h1> first page </h1>
hello

</body>

</html>

answered Mar 26, 2013 at 6:25

btevfik's user avatar

btevfikbtevfik

3,3912 gold badges27 silver badges39 bronze badges

0

I learned that the title is the meta tag (the SEO bits), and the H1 is what shows up on the page. So if you’d like both to be the same, example: Things I’ve Learned is the title and the header of your website, you’d repeat the line.

<html>
<head> 
<title>Things I've Learned</title>
</head>

<body> 

<h1>Things I've Learned</h1>

<p>These are the things</p>


</body>
</html>

VIA QUORA:
«The key difference between these tags is where their content appears. That difference impacts how search engines and web surfers analyze your page. Title Tag: The Title Tag is known as a meta tag. … Because it displays the largest text, the H1 Header tag is often used to create a title at the top of the page.»

More on how to optimize titles for search engines here.

answered Jun 5, 2019 at 16:56

Em Hollis's user avatar

обновлено: 13.02.2020 1566399901

Александр Коваленко, CEO/founder агентства Advermedia.ua, опыт в SEO более 10 лет.
Канал автора в телеграм: @seomnenie

Информация о статье

Ошибка 404 - что означает, как создать и настроить

Заголовок

Ошибка 404 — что означает, как создать и настроить

Описание

Все о 404 ошибке: 1. Что означает 404 2. Как создать страницу 404 3. Как найти ошибки 404 на сайте 4. Как исправить

Автор

Организация

advermedia.ua

Логотип

advermedia.ua

Loading…

CEO/founder агентства Advermedia.ua, опыт в SEO более 10 лет.
Канал автора в телеграм: @seomnenie

Новые материалы

Подписаться на телеграм канал СEO Advermedia Мнение SEO

Публикуем интересные материалы из блога и разбираем вопросы по SEO от подписчиков!


https://t.me/seomnenie
Подписаться

  • Ошибка hsync принтера xerox 3100 mfp
  • Ошибка hsync error xerox 3550
  • Ошибка hsm 204 отрицательный результат проверки фискального признака
  • Ошибка hresult 0xc8000222 при установке net framework для windows 7
  • Ошибка hp recovery manager код ошибки