HTML5 문법, DOCTYPE, 인코딩, 추가요소

Posted at 2009/07/16 13:13 // in 웹표준, 웹접근성™/HTML5 // by 블루비

문법

HTML 5 언어는 이미 잘 알려진 HTML 4와 XHTML1 문법과 호환 됩니다만 HTML내 난해한 SGML 문법과는 호환되지 않습니다. 문서는 text/html MIME 형식을 사용하게 됩니다.

HTML 5는 구현을 용이하기 위해 오류 처리를 비롯하여 세부적인 파싱 규칙을 정의 합니다. 사용자 에이전트는 text/html MIME 형식을 가진 문서를 파싱 할때는 이러한 규칙을 따르게 됩니다. 아래에 HTML 문법과 함께 처리하는 간단한 예제가 있습니다.

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>예제 문서</title>
</head>
<body>
<p>예제 단락</p>
</body>
</html>

HTML 5에 사용된 다른 문법은 바로 XML 입니다. XHTML1 문서 및 구현과 같은 문법을 사용할 수 있습니다. 이 문법을 사용하는 문서는 XML MIME 형식을 사용하고 http://www.w3.org/1999/xhtml 네임 스페이스를 이용하고 XML 명세에 따라야 합니다. [XML]

아래 예제는 HTML 5에서 XML 문법을 사용할 때의 예제 입니다. 아래 문서는 application/xhtml+xmlapplication/xml 같은 XML MIME 형식을 따르고 있습니다.

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>예제 문서</title>
</head>
<body>
<p>예제 단락</p>
</body>

DOCTYPE

HTML 5 문법은 웹 브라우저가 표준 모드로 문서를 렌더링 할 수 있도록 문서 처음에 DOCTYPE을 지정해야 합니다. DOCTYPE은 특별한 목적이 없이 XML을 위한 옵션입니다. XML MIME 형식 문서는 관계 없이 항상 표준 모드로 동작합니다. [DOCTYPE]

기본 DOCTYPE 선언 방식은 <!DOCTYPE html>이며 대소문자 구별을 하지 않습니다. 초기 HTML 버전에서의 DOCTYPE은 HTML이 SGML의 일부라서 새로운 DTD를 참조해야 되었기 때문에 필요했지만 지금은 더 이상 그럴 필요가 없습니다. HTML 5는 HTML 문법을 사용하는 문서를 표준 모드로 동작하기 위해 DOCTYPE을 이리 저리 바꿀 필요가 없습니다. 웹 브라우저는 단순히 <!DOCTYPE html>만 있으면 표준 모드로 동작 합니다.



문자인코딩

HTML 5 저작자들은 문자 인코딩에 관한 아래 세 가지 부분 중 하나에 설정하여야 합니다.

  • 전송 단계에서 HTTP 헤더에 Content-Type 표시.
  • 문서 앞부분에 특수 유니코드 BOM 문자를 표시. 이 문자는 인코딩 방법에 대한 정보를 제공해 줍니다.
  • 파일 초기 512 바이트 크기 내에 meta 요소 내 charset 속성에 표시. UTF-8 방식을 이용하면 <meta charset="UTF-8">와 같이 표기 하며 기존의 사용 방식인 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">에서 변경하는 게 좋습니다.

XML 문법을 작성하는 저작자들은 XML 명세에 따라 문자 인코딩 설정을 하여야 합니다.


HTML5 추가 요소

아래 요소들은 구조적 마크업을 위해 추가된 요소들입니다:

  • section 은 태그는 일반적인 문서 및 어플리케이션 영역을 표시할 때 사용합니다. 문서 구조를 가르키는 h1-h6와 함께 사용할 수 있습니다.
  • article 은 뉴스 기사나 블로그 글 같은 독립적인 컨텐츠 단위를 표시할 때 사용 합니다.
  • aside 는 문서의 주요 부분을 표시하고 남은 부분의 컨텐츠를 표시할 때 사용합니다.
  • header 은 문서 내 머리말 부분을 표시할 때 사용합니다.
  • footer 는 문서 내 꼬리말 부분을 표시할 때 사용하며 문서 저자, 저작권 정보 같은 것을 표시할 수 있습니다.
  • nav 는 문서 내 네비게이션 요소들을 표시하기 위한 영역입니다.
  • dialog 는 대화 기능을 표시할 때 사용할 수 있습니다.
    <dialog>
    <dt> 안녕하세요?
    <dd> 네 오랜만입니다. 건강하시죠.
    <dt> 물론입니다. 당신은?
    <dd> 저도 좋습니다.
    </dialog>
  • figure 는 그림이나 비디오 같은 임베딩 컨텐츠와 함께 캡션을 할때 사용 합니다.
    <figure>
    <video src=ogg>…</video>
    <legend>캡션 예제</legend>
    </figure>

또 다른 몇 가지 요소들을 추가하였습니다.

  • audio video 는 멀티미디어 컨텐츠를 표시하는 데 사용합니다. 둘다 어플리케이션 개발자들이 사용자 인터페이스를 직접 만들 수 있는 API를 제공 합니다. 다중 source요소는 다른 형식의 다중 스트림을 제공하게 되는 경우 이들 요소들과 함께 사용할 수 있습니다.
  • embed 는 플러그인 컨텐츠를 표시할 때 사용합니다.
  • m 는 별도로 표시한 컨텐츠를 표시하는데 사용합니다.
  • meter 는 디스크 사용량 같은 측정값을 표시하는 데 사용합니다.
  • time 은 날짜나 시간을 표시하는 데 사용합니다.
  • canvas 는 그래프나 게임 같은 동적인 비트맵 그래픽을 표시하는 데 사용합니다.
  • command 는 사용자가 실행할 수 있는 명령어를 표시하는 데 사용합니다.
  • datagrid 는 트리 목록이나 표 데이터를 좀 더 동적으로 표현하는 데 사용합니다. (역자 주. 목록형 구조로 테이블 보다 쉽게 구조를 이해할 수 있습니다.)
  • details 은 사용자의 요청에 따라 얻은 콘트롤이나 부가 정보를 표시하는 데 사용합니다.
  • input 을 위한 list 속성과 datalist 는 유용한 콤보 박스를 만드는 데 사용합니다.
    <input list=browsers>
    <datalist id=browsers>
    <option value="Safari">
    <option value="Internet Explorer">
    <option value="Opera">
    <option value="Firefox">
    </datalist>
  • event-source 는 서버가 보낸 이벤트를 파악하는 데 사용합니다.
  • output 은 자바 스크립트로 수행된 결과값을 표시하는 데 사용합니다.
  • progress 은 다운로드 같은 작업 진척도나 진행 정도를 표시하는 데 사용합니다.

input요소에는 아래와 같은 좀 더 세부적인 type 속성 들을 추가 합니다.

  • datetime
  • datetime-local
  • date
  • month
  • week
  • time
  • number
  • range
  • email
  • url

새로운 형식들은 웹 서버에 기 정의된 유효 형식을 전달해 줄 수 있도록 사용자 에이전트가 일정에서 날짜 선택 시 달력을 표시해 주기 위해 만든 것입니다. 또는 주소록에 이메일 주소를 입력할 때 유효성을 체크 해 줌으로서 불필요한 자바 스크립트 유효성 확인 절차를 줄여 주어 사용자들이 빠르게 기능을 사용할 수 있도록 도와 줍니다.

- HTML 5 differences from HTML 4
2009/07/16 13:13 2009/07/16 13:13

댓글을 남겨주세요.

[로그인][오픈아이디란?]

HTML5 미리 보기

Posted at 2007/12/07 02:15 // in 웹표준, 웹접근성™/HTML5 // by 블루비
http://www.alistapart.com/articles/previewofhtml5

사용자 삽입 이미지






























HTML 4의 구조는 아래와 같지만
사용자 삽입 이미지


HTML5 에서는 ?? 새로운 Tag
사용자 삽입 이미지

2007/12/07 02:15 2007/12/07 02:15

댓글을 남겨주세요.

[로그인][오픈아이디란?]

HTML 4와 HTML 5의 차이점

Posted at 2007/07/20 09:10 // in 웹표준, 웹접근성™/HTML5 // by 블루비



HTML 4와 HTML 5의 차이점
http://www.creation.net/work/html5/html4-differences/

「HTML 5」를 주목해야 하는 이유
http://www.zdnet.co.kr/builder/dev/web/0,39031700,39159520,00.htm
2007/07/20 09:10 2007/07/20 09:10
  1. BoKi

    2007/07/26 14:18 [수정/삭제] [답글]

    HTML 공부 다시 해야겠군요~ ㅎ

댓글을 남겨주세요.

[로그인][오픈아이디란?]