쿼크모드(Quirks mode)와 표준모드(Standard mode)

2020. 1. 12. 10:58HTML/CSS

웹 브라우저는 두 가지 렌더링 모드를 지니고 있는데 쿼크모드(Quirks mode)와 표준모드(Standard mode)이다.

즉 브라우저는 선언된 doctype에 따라 렌더링할 모드를 선택하게 되는데 이 과정을 doctype sniffing 또는 doctype switching이라고 한다.

 

쿼크모드(Quirks mode)는 오래된 웹 브라우저를 보여줄 때, 하위 호환성을 유지하기 위해서, 표준모드를 대신하여 쓰이는 모드이다. 즉 쿼크모드의 목적은 오래된 웹페이지들이 최신 버전의 브라우저에서 깨져 보이지 않으려는 것에 있다.

 

그렇다면 브라우저는 문서가 최신인지  오래된 문서인지 어떻게 판단할까?

바로 문서 상단에 있는 DTD(Document Type Defination)를 보고 쿼크모드 혹은 표준모드로 렌더링한다.

 

DTD의 구성은 PUBLIC 문자열과 FPI(formal publick identifier), FSI(formal system identifier)로 이루어져 있다.

 

1. FPI와 FSI 모두를 포함하는 doctype 선언 예 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtdViewer">

2. FPI만 선언되어있는 doctype 선언 예

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

 

1번처럼 동시에 기술되어 있을 경우 브라우저는 표준모드를 선택하고, 2번처럼 FSI가 기술되어있지 않는 경우 브라우저는 쿼크모드로 렌더링한다. 또 아예 DTD를 적지 않으면 쿼크모드를 선택한다.

 

 

'HTML/CSS' 카테고리의 다른 글

웹에서 모달창과 팝업창의 차이점  (0) 2020.01.12
점진적 향상법, 우아한 성능 저하법  (0) 2020.01.12
<strong>&<b>, <em>&<i> 차이점  (0) 2020.01.11
reset.css의 개념  (0) 2020.01.11
UI/UX 정의와 차이점  (0) 2020.01.11