html5 — ошибки валидации (такие как & quot; начальный тэг html & quot;), которые, похоже, не могут поколебать заголовок. Переполнение стека

Запуск проверки и получение нескольких ошибок.

    f<!DOCTYPE html>↩
<!--[if IE 8 ]><html class="ie ie8 no-js" lang="en-US" prefix="og: http://ogp.me/ns#"> <![endif]-->↩
<!--[if (gte IE 9)|!(IE)]><!--><html class="no-js" lang="en-US" prefix="og: http://ogp.me/ns#"> <!--<![endif]-->↩
<head>↩

Я попытался сохранить header.php как (UTF-8, без спецификации), но я не могу встряхнуть непробельный символ (‘f’) в начале.

Вот код PHP:

<!DOCTYPE html>
<?php
/**
* Theme Header
*
* Outputs <head> and header content (logo, tagline, navigation)
*/
?>
<!--[if IE 8 ]><html class="ie ie8 no-js" <?php language_attributes(); ?>> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--><html class="no-js" <?php language_attributes(); ?>> <!--<![endif]-->
<head>

Тогда я понятия не имею, с чего начать с тегом ошибки «блуждающий HTML». Проверьте сами http://wsumc.com/worship

2

Решение

Смотря на https://validator.w3.org/nu/?doc=http://wsumc.com/worship/

«Бродячий стартовый тег html» сообщение является просто еще одним побочным эффектом этого f в начале.

То, как работает HTML, заключается в том, что f это голый текст, который head Элемент не может содержать — это означает, что тело документа запущено и все, что следует за ним, является частью тела. Поэтому, когда анализатор HTML видит это fпарсер генерирует <body> Начать тег.

Но следующая вещь, которую видит парсер: <!DOCTYPE html>— который сейчас в body— так парсер говорит, «Бродячий учитель» и движется дальше. Но затем следующая вещь, которую парсер находит <html> Начальный тег, который теперь также находится в body— так парсер говорит, «Бродячий стартовый тег html».

Разбор HTML-документов раздел спецификации HTML определяет, как все это работает (хотя по общему признанию не для супер-доступного способа для большинства читателей …)

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]