2016-11-08 4 views
2

저는 회사의 응용 프로그램 개발자이며 최근까지 HTML에 많은 관심을 기울이지 않았습니다. 휴식 시간에 JavaScript 및 HTML 비트를 가르칩니다.XHTML-HTML이 이미 XML 형식입니까?

HTML과 XHTML의 차이점은 특히 HTML5 관련 기사에 있습니다.

나에게 혼란스러운 개념은 HTML이 이미 XML 형식으로되어 있다고 생각한다는 것입니다. 그래서 누군가 XHTML이 XML로 된 HTML이라고 말하기 시작하면 혼란 스럽습니다. 의 xmlns 모든 페이지

  • 의 html 요소에 속성을 추가 모든 페이지
  • 의 첫 번째 줄에 XHTML <!DOCTYPE> 추가 http://www.w3schools.com/html/html_xhtml.asp

    • 에 나와있는

      는 HTML 및 XHTML 사이에 약간 차이가 있습니다 모든 요소 이름을 소문자로 변경하십시오.

    • 빈 요소를 모두 닫습니다.
    • 모든 특성 이름을 소문자로 변경하십시오.
    • ,
    • 견적은 모든 속성은 다른 사람들이 또한 HTML에 적용 할 수있는 단지 더 엄격한 구문 규칙입니다,

    그러나 떨어져 제 1 및 제 2 지점에서

  • 값. 또한 HTML 문서에서 XML 도구를 사용하는 것이 나머지 점을 따르는 한 가능하다고 생각합니다.

    두 가지 다른 표준을 구별하는 요지는 무엇입니까?

    편집 : HTML5으로 추측 해 봅시다. 구별은 더 명확하지 않습니다 (또는 다소 포괄적입니다).

    +0

    * "나머지 점을 따르면 HTML 문서에서 XML 도구를 사용할 수 있다고 생각합니다."- 예, 그러나 그 점은 나머지 HTML 문서가 매우 적다는 것입니다. HTML과 XML은 [밀접한 관련이있다] (https://en.wikipedia.org/wiki/Standard_Generalized_Markup_Language)라고 말하는 것이 더 정확하지만 XML은 HTML에 비해 형식 규칙이 매우 엄격합니다. 어쨌든, XHTML은 요즘 거의 죽지 않으므로 그만큼주의를 기울이지 않을 것입니다. – JJJ

    답변

    2

    tl; dr :
    아니요, HTML은 아직 XML 형식이 아닙니다.

    긴 대답 :

    HTML은 XML에 비해 다른 규칙을 따릅니다. 물론 XML의 전체 규칙은 조금 더 엄격하지만 그 부분이 중요합니다. 요점은 유효한 HTML이지만 XML과 관련이 거의없는 문서를 가질 수 있다는 것입니다. 예 :

    <title>?</title> 
    <p>Hello 
    

    이 요소에는 루트 요소조차 없습니다. 즉, 보이지 않는 시작 태그와 종료 태그가 있습니다. 또는이 라인은

    <script src="script.js"/> 
    

    이며, HTML은 없습니다. 엄청난 결과! 그러나 이것은 잘 구성된 XML이며 XHTML로이를 수행 할 수 있습니다.
    아니, HTML은 거의 XHTML이 아닙니다.

    HMTL과 XHTML의 차이점이있는 페이지를 만들었습니다. 다시 말해 W3Schools의 것보다 더 완벽합니다. here. 차이점을 연구하고 싶다면 그 차이점을 사용하십시오.

    예를 들어, W3School의 글 머리 기호 목록은 시작이지만 결코 완벽한 것은 아닙니다.

    • 모든 만들기 시작 및 종료 태그 볼에 당신은 또한
    • <script><style> 블록이 아니라 텍스트 만 파서 같 파서로 해석되는 것을 기억 HTML 표준에 따라 그들이 선택 경우에도 필요 . 스타일 블록에서 HTML처럼 보이는 것을 가지고 있다면 (예 : p:after {content:'</style>';}), 그 것이 잘못되었습니다! 이스케이프 & 징후
    • 에 동감 실현하는 HTML 및 XHTML
    • 는, 앵커

    아를위한 name 속성 <a> 요소를 사용하지 않고 다른 DOM 트리의 구조와 같은 <table><tr><td></td></tr></table> 결과 W3School의 첫 번째 글 머리 기호에 대해서는 브라우저가 표준 모드로 문서를 표시하는 데 DOCTYPE 선언이 필요하지 않습니다. 실제 XHTML 문서에서는이를 그대로두면 표시가 달라지지 않습니다.
    문서에서 이름이 지정된 엔티티 (예 : &eacute;)가 작동하려면 전체 DOCTYPE이 필요한 엔티티 만 필요합니다. (짧은 HTML5가 아닌 DTD 부분을 포함하는 완전한 DOCTYPE)