<!DOCTYPE html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "<http://www.w3.org/TR/html4/loose.dtd>">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>">
문서 형식 정의(Document Type Definition, DTD) 태그는 출력할 웹 페이지의 형식을 브라우저에게 전달한다. 문서의 최상위에 위치해야 하며, 대소문자를 구별하지 않는다.
html태그는 모든 HTML요소의 부모 요소이며, 웹페이지에 단 하나만 존재한다. 즉, 모든 요소는 html태그 안에 기술해야 한다(단 <!DOCTYPE>은 예외이다).
html태그는 글로벌 어트리뷰트를 지원한다. 특히 lang어트리뷰트를 사용하는 경우가 많다.
<html lang="ko">
head요소는 메타데이터를 기술하기 위한 요소이며, html태그나 body태그와 마찬가지로 웹페이지에 단 하나만 존재한다. head요소 안에는 title, style, link, script와 같은 페이지의 메타데이터에 관한 태그들이 기술될 수 있으며, 이들은 브라우저 화면에(창 안에/페이지 상에) 표시되지 않는다는 특징이 있다.
그런데 script 태그는 항상 head tag안에 와야 하는것은 아니다. body tag의 마지막에 오는 경우도 많다. 장단점이 있는 문제이다. 따로 Questions에 정리하자.
script 요소는 src를 호출한 결과를 javascript를 불러와서 포함시키는 것이 아니고 실행시키는 태그라고 한다. 이 이해는 꽤 중요한듯.
title 요소에는 문서의 제목을 정의할 수 있으며, 정의된 제목은 브라우저의 탭에 표시된다.
style 요소에는 HTML문서의 style정보를 정의한다. (보통은 외부 css파일을 link tag로 연결해주므로 사용하지 않게 되는 태그인거 같다.)
(body태그 안에 사용된 경우를 본적이 있다. 검색해보니 정석적이지는 않지만 가능은 하다고 한다. 브라우저에 따라 지원되지 않을수도 있다는듯?? 어쨌든 정석은 head안에 쓰는것이다)
link 요소에는 외부 리소스와의 연계 정보를 정의한다. 주로 외부 CSS파일을 연계하는데 사용된다
script 요소에는 client-side JavaScript를 정의한다.