2017-04-06 7 views
2

유효성 검사를 실행하고 몇 가지 오류가 발생합니다.header.php에서 흔들릴 수없는 유효성 검사 오류 (예 : "Stray start tag html")

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>↩ 

내가 (UTF-8, BOM)로 header.php을 저장하려고했습니다,하지만 시작에 비 공백 문자합니다 ('F')를 흔들 수없는 것. 내가 어디에 "길잃은 HTML"오류 태그에 시작하는 단서가 없다, 그런

<!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> 

: 여기

은 PHP 코드입니다.

"길 잃은 시작 태그 html"

메시지가 처음에 그 f의 또 다른 부작용은 ... https://validator.w3.org/nu/?doc=http://wsumc.com/worship/ 보면 자신 http://wsumc.com/worship

+1

는 PHP 있는가 (... 대부분의 독자를위한 슈퍼 친근한 방법으로하지만 틀림 없습니다)이 모든 작동 방식을 정의? 'f'는 어디에서 왔습니까? – chris85

+0

'DOCTYPE'이 먼저 와야하므로'f'를 제거하십시오 – JustOnUnderMillions

+0

실제 PHP 코드를 보여주십시오. –

답변

2

확인합니다.

HTML이 작동하는 방식은 요소에 포함될 수없는 알몸 텍스트이므로 문서의 본문이 시작되었고 뒤 따르는 모든 것이 본문의 일부임을 의미합니다. 따라서 HTML 파서가 f을 볼 때 파서는 <body> 시작 태그를 생성합니다.

그러나 파서가 보는 다음 것은 파서가 말한다 - 그래서 body에 지금 - 어떤 <!DOCTYPE html>, "길 잃은 DOCTYPE"하고 이동합니다. 하지만 파서가 찾은 다음 작업은 시작 태그입니다.이 태그는 body에도 있습니다. 파서가 말하길 "Stray start tag html"입니다.

Parsing HTML documents section of the HTML spec