제공 :
한빛 네트워크
저자 : Adam Flaherty
역자 : 신동일
원문 :
HTML 5 Overview
HTML5는 가장 최신 버전의 하이퍼텍스트 마크업 랭귀지이다. Jennifer Niederst Robins의 HTML & XHTML 포켓 레퍼런스에서 발췌된 것으로 HTML5가 제공하고 있는 것에 대한 개요이다.
HTML5는 의미상 마크업 문서뿐 아니라 웹애플리케이션을 생성할 때 매우 유용한 것을 목표로 하고 있지만 이 시점에서 정식 제안서는 아니다. 이것은 브라우저를 보다 지원하고 웹, 모바일 애플리케이션 개발에 사용된다.
HTML5는 HTML4.01을 사용하고 기존의 브라우저의 동작이 문서객체모델(DOM, 문서가 트리형식으로 구조화됨)이 다른 특색있는 문법규칙보다 더 사용된다. HTML5는 HTML문법(HTML5의 HTML동기화)혹은 XML파싱이 필요한 경우 보다 엄격화된 XML문법(XML동기화, "XHTML5")을 따른다.
노트
HTML5는 계속 개발중이므로 상세한 것은 빨리 변하고 있다. 이책에서 HTML5 구성요소와 속성은 2009년 12월 9일자 WHATWG HTML5 Working Draft에 기반하고 있다.
가장 최신버전은
www.whatwg.org/specs/web-apps/current-work/multipage/, HTML 4.01과 HTML5가 다른 방법들에 대한 리스트는
dev.w3.org/html5/html4-differences를 참조하라.
HTML5에서 새로워진 것
HTML5는 보다 쉬운 웹개발과 보다 함축된 폼 핸들링을 위해 새 특성(엘리먼트,속성,이벤트 핸들러, API)를 제공한다. 이것들은 페이지 콘텐트를 위한 새로운 의미의 태그 엘리먼트들이다. HTML5에서는 순수한 표현혹은 별로 도움이 안되었던 HTML4.01에서 엘리먼트와 속성들이 빠졌거나 어떤 것들은 재정의되었다.
엘리먼트
아래의 엘리먼트들은 나중엔 알파벳순으로 찾을 수 있다.
article
footer
rp
aside
header
rt
audio
hgroup
ruby
canvas
keygen
section
command
mark
source
datalist
meter
time
details
nav
video
embed
output
figure
progress
새 입력 타입
HTML5는 다음의 새 입력 제어 타입을 소개하고 있다. (input 엘리먼트에 대한 type속성에 대한 값들로 표시됨)
color, date, datetime, datetime-local, email, month, number, range, search, tel, time, url, week.
속성과 이벤트
HTML5의 모든 엘리먼트에 대한 글로벌 속성과 이벤트들이 "공통 속성과 이벤트" 섹션에 자세히 리스트되어 있다. 새 HTML5속성은 알파벳순의 엘리먼트 섹션에 HTML5 only라고 레이블 되어 있다.
APIs
보다 인터액티브한 웹페이지 콘텐츠가 증가함에 따라 HTML5는 웹어플리케이션 표준화하기 위한 몇가지 API(응용프로그래밍 인터페이스)를 소개하고 있다.
다음과 같은 APIs가 있다.
- 새 canvas 엘리먼트와 결합하기 위한 2차원 드로잉
- 새 video,audio 엘리먼트과 같이 사용되는 비디오/오디오 파일 실행
- 오프라인 웹어플리케이션
- 특정 프로토콜이나 미디어타입을 등록하는 어플리케이션
- 새 글로벌 contenteditable 속성을 포함하는 도큐먼트 편집
- 드래그 앤 드랍 기능(새 draggable속성을 포함)
- 웹브라우저 히스토리를 보여주고 페이지가 백버튼없이 추가할 수 있도록 허용
- 상호 문서 메시징
HTML5 문서 구조
HTML5는 버전이 하나이고 DTD를 참조하지 않는다. 그러나 HTML5문서는 브라우저에서 표준모드를 렌더링하도록 단순한 DOCTYPE 선언을 필요로 한다. 다음은 HTML5문서의 기본구조이다.
Document Title
Content of document . . .
XML문법으로 쓰인 HTML5 문서는 DOCTYPE을 요구하지 않으나 XML선언을 포함시킬 수도 있다. 그것은 MIME타입 application/xhtml+xml 혹은 application/xml로 제공된다. 다음은 XML문법으로 쓰인 단순한 HTML5 문서이다.
xmlns="http://www.w3.org/1999/xhtml">
Document Title
Content of document . . .
HTML5 브라우저 지원
이 문서에 의거 HTML5는 아직 초기버전이고 제한된 브라우저 지원을 하고 있다. 새 특성이 Firefox 3.5+, Safari 3+, Chrome 2+ 그리고 Opera 9+(오페라는 거의 모든 HTML5 폼 특성을 지원하고 있다)에 의해 지원되어지고 있다. IE는 contentEditable을 지원하고 있으나 아직 버전 10 릴리즈에서 HTML5의 지원을 약속하고 있지 않다. 우리는 어떤게 다음에 나올지 기다려 보아야 할 것이다. 한편, 자바스크립트는 브라우저가 HTML5 엘리먼트를 인식하도록 사용될 수 있다.
많은 개발자들은 HTML5가 웹어플리케이션의 형식을 도맡하게 될 주요 무대로 모바일 세계를 보고 있다.
다음의 리소스들은 HTML5의 실제 지원과 사용을 찾아보는 데 유용하다.