피드로 돌아가기
HTML vs XHTML: El orden contra el caos
Dev.toDev.to
Frontend

WHATWG가 2004년 HTML5의 오류 허용(error-tolerant) 설계를 도입해 XHTML의 엄격한 XML 파싱 규칙을 대체

HTML vs XHTML: El orden contra el caos

gilq2026년 3월 28일1intermediate

Context

2000년대 초 XHTML은 개발자에게 완벽한 코드 작성을 강제했다. 최소한의 오류(예: 태그 미종료, 속성 누락)가 발생하면 브라우저가 XML Parsing Error를 표시해 페이지 전체가 로드되지 않았다.

Technical Solution

  • XHTML의 엄격한 규칙을 HTML5의 오류 허용 철학으로 전환: 소문자 강제 해제, 태그 미종료 허용, 속성 값 생략 가능(예: checked="checked" → checked)
  • 브라우저가 마크업 오류를 자동으로 정정해 렌더링: <BR> 대문자, <br> 미종료도 올바르게 해석
  • "Living Standard" 모델 도입: 정적 스펙 대신 웹 개발 현실을 반영해 표준을 지속적으로 진화
  • 개발자 경험(DX) 우선화: 기존 관행(대문자, 미종료 태그)을 표준이 수용하는 방식으로 설계

Key Takeaway

HTML5는 코드 순수성보다 사용자 경험과 개발 편의성을 우선했고, 이로 인해 웹 표준으로서 광범위한 채택을 이뤘다. 실제 현업 엔지니어는 HTML5의 관용성에도 불구하고 유지보수성을 위해 소문자·태그 종료 등 XHTML 수준의 규율을 스스로 유지하는 것이 모범 사례다.


웹 개발팀에서 HTML5 마크업 스타일 가이드를 정할 때, 브라우저의 오류 허용 능력에만 의존하기보다는 코드 일관성(소문자, 태그 종료, 명시적 속성값)을 강제해 팀 전체의 유지보수성과 코드 리뷰 효율성을 높일 수 있다.

원문 읽기