웹표준

게시글 '마크업, 모든 페이지의 기본'에 대한 정보
마크업, 모든 페이지의 기본
등록일 2009-11-02 조회 1,806

HTML 그리고 XHTML은 속성들(Attributes)로 이루어진 마크업 언어이다. 이 요소들은 문서에서 여러가지 다른 형태들을 구분하기 위해 사용되고, 각각의 내용의 히트가 웹 브라우저에 나타날 수 있도록 한다.

당신이 기대한대로, 요소들은 실질적인 컨텐트 타입을 정의하는 반면에 속성들은 각 요소들을 알아내는 ID 혹은 링크를 위한 위치 와 같은 그 요소들의 여분의 정보를 정의한다. 당신은 마크업이 가능한 의미적이야 한다는걸 명심해야 하는데, 그것은 가능한 정확한 컨텐트의 기능들을 설명해야 한다. 그림1은 전형적인 HTML 요소의 구조를 보여준다.

 

XHTML은 무엇인가?
XHTML의 “x”는 “확대가능한”것을 의미한다. 가장 흔한 질문은 “내가 HTML혹은 XHTML을 사용해야 합니까? 그리고 다른점은 뭡니까”이다. 그들은 굉장히 비슷하다; 가장 큰 차이점은 아래 구조와 같다. 다음 표를 보자.

HTML  XHTML 
요소들과 애트리뷰트들이 격에 민감하지 않다. <h1>과 <H1>은 같다.  요소들와 속성들이 대/소문자 구분(case sensitive)에 민감하다. 모두 소문자를 사용한다. 
특정한 요소들은 닫기 태그를 필요로 하지 않는 반면에 다른 것들은(빈 요소들이라고 불리는) 닫기 태그를 금지한다.  모든 요소들은 명백하게 닫혀야 한다. 컨텐트가 없는 요소들은 시작 태그에 슬래쉬(/)를 사용하여 닫혀야 한다. 만약 당신이 당신의 XHTML을 text/html으로 제공한다면 당신은 가장 짧은 문법(Syntax)을 사용해야 하고 슬래쉬 앞에 스페이스를 위치해야 한다. 비어 있다로 정의된 모든 요소들에 분리된 시작태그와 닫기 태그를 가진 긴 형태를 사용해야 한다. 
어떤 속성 값들은 따옴표를 사용하지 않아도 된다.  모든 속성 값들은 따옴표 안에 와야한다. 
축약형(Shorthand)은 특정한 속성에 사용된다.  모든 속성은 완전한 형태(속성명='속성값')로 작성되어야 한다. (예 <option selected=“selected”>).
서버들은 HTML을 text/html의 미디어 타입으로 전달해야 한다.  XHTML은 application/xhtml+xml 미디어 타입을 사용해야하지만 application/xml, text/xml or text/html를 사용할 수도 있다. 만약 text/html이 사용된다면 HTML 호환 지침서들이 따라와야 하는데 왜냐하면 브라우저들은 그것을 HTML로 취급할것이기 떄문이다. (그리고 언어의 차이점을 설명하기 위해 에러 회복(error recovery)을 사용할 것이다) 

이제, 우리는 HTML 혹은 XHTML을 쓸것인지에 대해 그렇게 걱정할 필요가 없다는 걸 알았다. 이번에 배운 정보를 가지고 HTML Doctype (article 14) 을 사용하면 크게 잘못되지는 않을 것이다.

유효성 검사, 그게 뭔데?
HTML 과 XHTML이 표준이기 때문에 W3C는 당신을 위해 당신의 페이지를 자동적으로 확인하고 닫기태그가 빠졌다거나 따옴표를 빼먹는 것 과 같은 당신의 코드가 가질 수 있는 모든 에러를 집어낼 수 있는 굉장한 도구를 발명했다. Markup Validator는 http://validator.w3.org/에서 사용 가능하다. 그것은 당신이 HTML을 사용하는지 XHTML을 사용하는지 자동적으로 감지하고 어떤 Doctype을 사용하는지 확인한다. 만약 당신의 CSS를 확인하고 싶다면 http://jigsaw.w3.org/css-validator/에서 Validatior를 사용할 수 있다.