애플 iPad 논란과 유튜브 HTML5 지원 이슈와 Flash vs. HTML 5 이슈를 거치면서 HTML 5에 대한 반응이 국내에서 커지고 있군요.
지난 주에 했던 블로터 포럼 인터뷰가 어제 올라간 후 저에게 이런 저런 문의를 해 주신 분들이 많습니다. 제가 가지고 있는 지식이나 경험은 짧지만 최대한 가지고 있는 것을 하나의 글에 제공해 드려 보도록 하겠습니다. 아래 글은 개인적으로 관리하던 HTML 자료 모음집을 합친 것입니다.
트위터를 검색하면 맨 위에 있는 Twitter의 모든 것 처럼 HTML5에 궁금증이 있으신 분들을 위해 모아서 공유 합니다. 앞으로 좋은 자료를 찾는 대로 계속 업데이트 해 보겠습니다.
I. HTML 5 소개
HTML 5는 W3C에서 만들고 있는 차세대 웹 표준으로서 마이크로소프트, 모질라, 애플, 구글, 오페라 등 모든 웹 브라우저 벤더가 참여하고 있는 산업 표준이기도 합니다. 2004년 WHATWG의 초안으로 부터 시작된 이 표준안은 시맨틱 마크업, 편리한 웹폼 기능, 리치 웹 애플리케이션 API 들을 담고 있으며 2007년 부터 W3C HTML W/G에서 표준안이 만들어 지고 있습니다.
HTML5의 주요 목적은 과거 HTML의 호환성을 유지하면서 웹 개발자들이 실질적으로 부딫히는 문제를 해결 하고 HTML 문서가 좀더 의미 있으면서도 리치 웹 애플리케이션 기능을 수행할 수 있는 범용 표준을 만드는 데 있습니다. 즉, 웹 문서 기반을 그대로 유지하면서 웹 브라우저 간의 상호 운용성을 위한 세부적인 지침을 담고 있으며 필요에 따라 각 이해 관계자를 위한 별도 문서도 제작해서 배포하고 있습니다.
HTML5는 향후 웹 브라우저의 가장 표준 기반 렌더링 엔진의 문서 타입이 될 것입니다.
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>예제 문서</title>
</head>
<body>
<p>예제 단락</p>
</body>
</html>
1. 시맨틱 마크업
HTML 5에서는 기존의 HTML4 보다 확장된 태그들을 지원합니다. 특히, 문서 구조에 적합하게 header, footer, nav, section 같은 구조화 마크업을 사용할 수 있습니다.
또한, time, mark, meter, datalist 등과 같은 특정 의미 기반 태그들이 추가로 지원 됩니다. b의 경우 b는 키워드, i는 학명에 사용하도록 기존 많이 사용하는 요소도 그대로 이용할 수 있습니다.

하지만, CSS로 완전 대체 가능한 big, center, font, s, strike 같은 스타일 기반 요소는 완전히 없어집니다. 또한, frame과 applet, acronym 같은 부정적인 요소들도 사용하지 않습니다.
2. 편리한 웹 폼(WebForm) 기능
HTML5는 개발자의 수고를 들어 줄 Form 기능 개선을 담고 있습니다. input 태그의 각종 type 속성이 추가되어 다양한 기능을 제공해 줍니다.
datetime 속성값을 사용하면 달력을 웹 브라우저에서 제공해 주며, range 속성은 스크롤바를, url은 웹 사이트 목록, email은 메일 주소 유효성 확인을 해 주기도 합니다. color 속성은 색상표를 별도 개발 없이 사용할 수 있습니다.

Form 양식은 모두 유효성 확인 기능을 켜거나 끌 수 있어 클라이언트 데이터 검증에 매우 도움을 주게 됩니다.
3. 리치 웹 애플리케이션
HTML 5는 웹 어플리케이션 작성에 도움을 줄 다양한 API를 제공 합니다. 새로 만든 HTML 요소들과 함께 더 좋은 어플리케이션 개발에 사용할 수 있습니다.

- 2차원 그래픽 API에 사용할 수 있는 canvas 요소.
- 내장 비디오 및 오디오 재생을 위한 video, audio 요소.
- 내장 저장소. 키/값이나 SQL 기반 데이터베이스 지원을 위한 기능.
- 오프라인 웹 애플리케이션 기반 API.
- 웹 애플리케이션이 독립적으로 특정 프로토콜 및 미디어 형식을 등록할 수 있는 API.
- contenteditable 속성과 함께 지원 되는 편집 API 기능.
- draggable 속성과 함께 지원 되는 드래그앤 드롭 API 기능.
- 페이지 앞/뒤 네비게이션을 지원할 방문 기록 표시용 API 기능. (보안 제한 모델이 있음)
- (원격) 다중 메시징 처리 기능.
II. HTML 5 표준 문서 소개
웹 표준을 만드는 웹 컨소시움(W3C)의 표준 문서들은 대체로 읽기 어려운 것으로 알려져 있다. HTML 워킹그룹에서는 이용자와 가장 친숙하게 접근할 수 있도록 이러한 문제점을 보완하기 다양한 관점에서 각기 다른 표준 문서를 제공하고 있습니다.

본 문서는 HTML5를 접하는 이용자들을 위해 어떠한 표준 문서가 제작되고 있는지 소개해 주고자 한다. 2009년 4월 이전에는 아래 소개된 문서들이 HTML 5 표준안에 함께 담겨 있었으나 분량이 많고 기존 마크업 기반 내용과 혼란을 준다는 측면에서 분리해서 관리하고 있습니다.
1. 일반 문서
1.1 HTML 5 :A vocabulary and associated APIs for HTML and XHTML
HTML 5의 원래 표준안으로 분량이나 내용이 모두 웹 브라우저 개발자를 위해서 만들어져 있다. 가급적이면 HTML 5 표준안 보다 아래에 있는 대로 관점에 따라 적당한 문서를 보는 것이 좋겠다.
1.2 HTML 4와 HTML 5의 차이점 (한국어)
HTML 5 differences from HTML 4라는 문서는 기존 HTML에 익숙하던 사람들이 HTML5에서 무엇이 바뀌었는지 알 수 있도록 만든 소개 문서이다. 이 문서는 HTML 5 입문자들이 읽기에 적당하며 연도별 주요 변경 내용도 담고 있으며 한국어로 번역되어 제공된다.
1.3 HTML 디자인 원칙
이 문서는 HTML5 표준을 만드는 데 있어, 의사 결정의 기본 원칙이 되는 사항을 모아 두고 있다.
- 호환성 – 기존의 HTML 문서를 최대한 지원, 단계적 기능 축소(Graceful degradation), 기존 기능 재사용 및 엄격한 잣대를 대지 않는 것
- 유용성 – 실제 웹 개발자들이 겪고 있는 가장 중요한 문제를 순위에 따라 나누되 문제점을 분리해서 독립적으로 해결 함.
- 상호 호환성 – 브라우저 엔진 호환을 위해 최대한 자세한 스펙을 기술하되 복잡하지 않고 오류 처리 방법을 꼭 기술.
- 보편적 접근성 – 미디어 포맷 독립성, 전 세계 언어 지원, 웹 접근성 보장
2. 웹 퍼블리셔
2.1 HTML5 표준안(웹 개발자 관점)
기존 HTML 5 스펙은 웹 브라우저 개발 회사를 위해 기술된 표준안이다. 개발자 관점에서 무엇이 어떻게 바뀌었고 어떻게 사용할 수 있는지 보여 줄 수 있는 문서가 필요하다. 과거 W3C 표준안들의 문제점이 바로 이용자가 아닌 개발자 위주로 만들어져 있어 읽기 어려웠다는 것이다. 이 문서는 바로 이용자 즉, 웹 개발자를 위한 스펙이다.
2.2 HTML 마크업(저작자 관점)
이 문서는 HTML5 표준안(웹 개발자 관점)의 하부 문서로서 HTML 문서를 주로 저작하는 웹 퍼블리셔 혹은 HTML 코더를 위해 만들어진 문서이다.
2.3 HTML Microdata
마이크로 데이터는 흔히 마이크로 포맷으로 알려진 시맨틱 데이터 정의를 범용적으로 만든 것이다. itemprop라는 속성을 통해 사용자 정의로 의미를 부여해 검색 엔진이나 시맨틱 엔진이 이를 처리할 수 있게 하였다. 사실상 비슷한 역할을 하는 RDFa와 함께 논의 되고 있는 중이다.
3. Rich UI 개발자
3.1 HTML Canvas 2D API
HTML5의 Canvas 태그 내 각종 객체를 그리고 생성하는 데 필요한 API를 기술하고 있다.
3.2 HTML Canvas 2D Context
HTML5의 Canvas 태그 내 각종 객체를 회전, 변환하고 그레디언트, 이미지 생성 등 각종 효과를 주는 기능 부분을 기술하고 있다.
참고로 Mozilla의 Canvas 튜토리얼이나 애플의 Canvas 예제를 보면 편할 것이다.
4. 웹 애플리케이션 및 백엔드 개발자
4.1 Server-Sent Events
웹 서버로 부터 전달(Push)되는 데이터 예를 들어 SMS 같은 것을 받을 수 있도록 EventSource를 정의하고 이벤트를 기다릴 수 있도록 하는 API를 기술하고 있다.
4.2 HTML5 Communications
이 스펙은 기존 Ajax의 단점으로 알려진 크로스 도메인 문서 접근을 가능하게 해 주는 스펙이다. 마이크로소프트의 XHR 때문에 약간 논의가 지지부진한 면이 있지만 텍스트를 위한 서버 통신을 지원해 준다. 물론 보안 사항에 대한 부분도 중요하게 다루어지고 있다.
4.3 Web SQL Database
자바 스크립트를 이용해 웹 브라우저 내장 데이터베이스에 SQL을 통해 질의하는 API이다. 오프라인 웹 애플리케이션 개발이나 모바일에서 로컬 데이터 캐싱이 필요할 때 유용하게 사용할 수 있으며, 일반적인 DB 라이브러리 수준의 메소드를 지원해 준다.
4.4 Web Sockets API
한 웹 페이지에서 서로 다른 서버에 있는 웹 페이지에 양방향 통신을 할 수 있는 별도 프로토콜을 정의할 수 있는 API이다.
4.5 Web Workers
웹 애플리케이션이 주 문서와 병렬적으로 스크립트를 백그라운드로 수행할 수 있게 해 주는 API. 쓰레드 기반 메시지 처리를 가능하게 해 준다. CPU 부하를 많이 잡는 작업을 여러 워커(worker)로 나누어 작업하거나 클라이언트 DB를 업데이트 하거나 나누어서 작업이 가능한 자바 스크립트 API를 제공해 준다. 흥미로운 점은 암호화 작업에 대한 유즈케이스를 담고 있어서 웹 브라우저들이 지원만 한다면 향후 전자 서명 기능을 제공해 줄 수도 있을 듯.
III. HTML 5 관련 발표 자료 및 글모음
본 문서는 제가 2005년 부터 HTML 5에 관심을 가져 오면서 만들었던 자료와 블로그 글 모음입니다. 예전 자료들인 만큼 낡은 내용도 있지만, 그간의 발전 과정 및 관련 이슈를 상세하게 다루고 있으므로 HTML 5의 역사를 파악하는데 도움이 될 것 입니다.
1. 발표 자료
HTML5와 모바일 웹 (2009)
HTML5 역사와 현황 (2008)
웹 표준의 미래 – HTMl5 (2006)
2. 블로그 글 모음
- IE9, HTML5 준수한다! 2009-11-19
- 요즘 HTML5에 무슨 일이… 2009-09-27
- 모바일과 HTML5 – 미래웹포럼 후기 2009-09-10
- HTML5 킬러앱은 ‘모바일’? 2009-08-28
- 마크업의 미래에 대한 오해 2009-08-24
- 구글은 왜 on2를 샀을까? 2009-08-07
- XHTML2.0 역사속으로? 2009-07-03
- Mozilla, 오픈 비디오 지원 10만불 쏜다! 2009-01-28
- 웹 애플리케이션은 전쟁 중! 2008-02-28
- 웹 표준, 나쁜 뉴스와 좋은 뉴스 2008-01-24
- HTML5에서 미디어 포맷 논쟁 중… 2007-12-12
- 반론: 차세대 웹은 브라우저를 초월하여… 2007-11-28
- 파이어폭스 SVG 비디오 시연 2007-08-22
- HTML5를 주목해야 하는 이유 2007-07-11
- HTML5와 HTML4의 차이점 2007-07-01
- 웹어플리케이션 전쟁 본격화 되나? 2007-06-07
- W3C HTML 워킹 그룹 부활! 2007-03-14
- HTML5와 웹 표준 전망에 대한 발표 자료 2006-12-04
- 팀 버너스리, 위기의 W3C 구하기 (2) 2006/11/09
- 팀 버너스리, 위기의 W3C 구하기 (1) 2006/11/03
- RFC: 새 HTML에 대한 의견 청취 2006-11-10
- 2차 웹 브라우저 전쟁, 관전 포인트는? 2006-11-01
- WHATWG의 도전 2005-9-15
3. 외부 기고
- ZDNet 칼럼 「HTML 5」를 주목해야 하는 이유
- 블로터닷넷 HTML5가 개발자에게 ‘기회의 땅’인 이유
4. 만화
HTML 5가 대두되면서 기존 XHTML과의 관계에 대한 이야기를 만화로 만든 것으로 Jeremy Keith 원작이며 마크업의 미래에 대한 오해에 한국어 전문이 있다.
IV. HTML5 외부 자료
본 문서는 HTML5에 대한 외국에 있는 각종 웹 사이트, 튜토리얼, 데모, 참고 문헌 등을 모은 것입니다. 모두 영문으로 되어 있지만 많은 것을 얻을 수 있습니다. 관련 자료가 한국어로도 제공됐으면 하는 바램이 있습니다.
1. 웹 사이트
- HTML5 Doctor – HTML5 이용 시 궁금증에 대한 해답을 제공.
- HTML FIVE – HTML5에 대한 일반적인 정보 제공
- HTML5 Gallery – HTML5 문서 형식으로 만든 웹 사이트 모음
- HTML5 Tutorials- 간단한 예제를 튜토리얼 형식으로 소개
- Planet HTML5 – HTML5 관련 전문가 블로그 모음
2. 문서 저작 튜토리얼
- HTML 5 and CSS 3: The Techniques You’ll Soon Be Using
- Coding A HTML 5 Layout From Scratch
- Designing a blog with HTML5
HTML5 기반 WordPress 테마
- Brave New World Karl Dawson
- H5, by Digging into Wordpress.
- Wordpress Basis WPEngineer
- Wordpress Naked, J. P. McGarrity.
- FreeDream Caroline Monmerqué.
3. 리치 기능 데모
- SketchPad – HTML 5 Canvas 기반 그래픽 저작 도구 – by Colorjack
- Sublime Video Player – HTML 5 Video Player (H.264만 지원)
- RGraph – HTML5 Canvas Graph 라이브러리
- Offline Image Editor and Uploader – Drag & Drop API, DOM Storage, Application Cache, Canvas, Cross Domain Sharing 기능 등을 활용. by Mozilla Hack
- HTML5 Adventure – Google I/O 2009 컨퍼런스 때 선 보였던 데모 모음.
- HTML 5 Demos and Examples Remy Sharp가 만드는 간단한 데모 사이트
- Mozilla Hack Demos Firefox에 탑재된 HTML5 등 신 기능 기반 데모 모음
4. 참고 자료
각 웹 브라우저에서 HTML5의 기능을 어디까지 구현하고 있는 지 현황을 담은 문서를 제공한다.
- When can I use… HTML5, CSS3, SVG 등 최신 기술에 대한 브라우저 호환도표
- HTML5 Comparison of Layout Engines 위키피디아의 HTML5 기능별 렌더링 엔진 호환도표
- List of Known Implementations of HTML 5 in Web Browsers WHATWG에서 관리하고 있는 웹 브라우저 구현 문제점 목록
- HTML 5 coverage WHATWG 표준안 기초 호환 도표
- HTML5 Compatibility Quirksmode에서 관리하는 HTML5 DOM 관련 기능 호환표.
- HTML5 Cheat Sheet
이 저작물은 크리에이티브 커먼즈 저작자표시-비영리-변경금지 라이센스에 따라 이용하실 수 있습니다.여러분의 생각
Trackback URL: http://channy.creation.net/blog/776/trackback여러분의 의견
-
rhio.kim
2010 2월 03 11:20좋은 글 감사합니다.
이 글로 HTML5에 대한 현재까지의 모든 정보를 얻을 수 있겠네요. -
duecorda
2010 2월 03 11:44좋은 포스팅 감사합니다.
-
산사랑
2010 2월 03 13:31최근 HTML5를 이해하기 위해서 자료를 수집하고 있는 중인데 많은 도움이 될 것 같습니다.
사실 기존의 자료도 여럿 있는데 쉽게 와 닿지 않아 고민 중 입니다.
-
골룸
2010 2월 03 14:54잘읽겠습니다. 공헌하시네요 ^^
-
bliss
2010 2월 03 15:17좋은 자료 감사합니다. ^^
-
woong
2010 2월 03 16:08좋은 글, 좋은 자료 감사합니다.
-
kueilove
2010 2월 03 16:26HTML5에 대해 관심이 많았는데 관련 사항을 일괄로 정리해주셨네요. 잘보고 갑니다.
-
폼나게살자
2010 2월 03 17:50고맙습니다. 많은 도움 되었습니다.
-
엄마곰
2010 2월 03 19:10그저 감사할뿐입니다!
-
주네
2010 2월 03 21:19저도 각 feature별로 정리한 것을 글로 옮겨볼까합니다..
정리 고맙습니다~ -
김은호
2010 2월 04 0:34감사합니다:D 읽기도 전에 도움이 됐습니다!!
-
이순호
2010 2월 04 13:34HTML5 Spec.을 모두 읽는 것도 부담스러운데 이렇게 잘 정리한 내용을 올려주시니 감사할 따름입니다.
-
Magicboy
2010 2월 04 17:14오오~ 잘 정리된글.. 잘 읽었습니다.
출처명시후 사내 블로그에도 스크랩했습니다 ^^;; -
아크몬드
2010 2월 05 1:21좋은 글, 잘 읽었습니다!!
-
세지군
2010 2월 05 8:13좋은 자료 감사합니다
-
쏭군
2010 2월 05 9:07차니님 오랜만입니다.
정말 원더풀한 포스팅입니다^^
잘 보고 갑니다~ -
앵겨
2010 2월 05 16:44아~~현재 뿌려진(??) 내용들로 개인적으로 적용해보고 있는데…구조화(section, nav등의 태그)가 너무 잘된탓에…그전보다 확실히 어려움이 느껴지더군요…
여튼…좋은 정보 고맙습니다~~
-
아거
2010 2월 06 1:07히악.. 정리 정말 끝내주게 하셨네요… 챙겨놓겠습니다.
그나저나 이름 넣고 댓글 올리려 보니 에러가 뜨네요. 다시 보니 전자우편을 적지 않았다고 하는데 (솔직히) 처음에 전자우편이 머리에 확 안다가왔기에 넣지 않은 것 같네요.
좋은 표현인데, 이미 이메일 이라는 외래어가 머리속에 주류적 컨셉으로 박힌 것 같다는 생각입니다. ^ ^
-
박은미
2010 2월 08 13:58안녕하세요.우연히 웹 서핑하면서..
선생님.. 블로그를 알게되었습니다.이러한 질문을 드려도 될런지…
예를들어. 3-screen(TV, 휴대폰, 웹)에 공통으로 적용될
웹사이트를 만들려고 한다면..
(가능한 질문인지조차 모르겠습니다. )호환성? 표준성? 과 관련된
여러 가지 기술이 있을것 같습니다.이러한 부분에 대한 Article이나, 서적 등이 있으면..
추천을 부탁드려도 될까요?급하게 보고서를 작성해야 하는 업무가.. 주어졌는데..
어디서부터 접근을 해야할지.. 정말
장님.. 코끼리 더듬는 기분입니다.부탁드립니다. 감사합니다.
-
범군
2010 2월 11 11:08좋은 정보 감사합니다 HTML5에 대한 편견을 가지고 있었는데 개념 정리 하고 갑니다
-
재호
2010 2월 16 17:45IT 선진국으로 갈수 있도록 정부,클라이언트에선 적극 지원하라!!
모두가 튼튼하게 설계한 UI로 유지보수 비용을 아끼고 편해집시다!! -
손영우
2010 2월 17 8:14귀한 자료 감사합니다.
-
똥차
2010 2월 23 13:19잘 보고 갑니다.
이 글을 게기로 더 많은 정보를 찾아봐야겠네요
IT 20년차가 이런것도 모르고 있었다는게 ㅠㅠ -
koreanaggie
2010 2월 26 22:17감사합니다. 최근 Adobe가 모바일에 죽쓰고 있네요. 구글이나 애플 모두 HTML5를 통해 대안을 삼을듯
-
Scavinzer
2010 3월 02 9:42좋은 자료 감사합니다! 조금 심도있게 공부해볼려하고 있었는데
많은 도움이 될꺼 같네요~
-
ohgyun
2010 3월 11 15:11정말 좋은 자료 감사합니다.^^
많이 도움 받았습니다.




이 블로그의 주요 관심사는
















2월 3rd, 2010 at 10:20
엽의 생각…
HTML5의 모든 것…
2월 3rd, 2010 at 11:25
Hello HTML5…
HTML5 .. 분명 XHTML과는 다른 길을 가고 있는 듯.. ‘크로스브라우징’의 생고생이 끝나길 기대한다….
2월 3rd, 2010 at 11:30
정찬명의 생각…
HTML5의 모든것. 여기서부터 시작하면 되겠네요. HTML5에 대한 막연한 두려움을 없애고 기대를 심어주네요….
2월 3rd, 2010 at 13:35
pupustory의 생각…
html5에 관한 포스트인데 .. 이 안에 xhtml과 html의 차이점부터 전반적인 html5에 대해서 쉽게 이해할 수 있게 되어 있네요!…
2월 3rd, 2010 at 14:16
블루비의 생각…
HTML5의 모든 것…
2월 3rd, 2010 at 15:24
개구리왕자님의 생각…
저도 스크랩해갑니다~…
2월 3rd, 2010 at 18:10
미중년박씨의 생각…
필독!! HTML5의 모든 것…
2월 5th, 2010 at 14:28
gsong의 생각…
HTML5의 모든 것 :: Channy’s Blog…
2월 6th, 2010 at 19:55
서울비의 알림…
HTML5란 무엇인가 — Channy’s Blog…
2월 8th, 2010 at 16:31
HTML5 요약…
Channy 님의 HTML5 요약글 입니다.
매우 잘 정리가되어 있네요.
좋은 자료 감사합니다….
2월 14th, 2010 at 13:19
hUmaN의 생각…
HTML5의 모든것…