마크업에서 호환성 모드 조정
X-UA-Compatible 을 통해 브라우저의 호환성 모드를 조정할 수 있습니다만
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
IE=edge
는 설치된 IE 중 가장 최신 버전을 렌더링에 사용하라chrome=1
는 크롬이 설치되어있다면 IE 에서도 크롬 렌더링을 사용하라
안타깝게도 <!doctype html>
HTML5 DTD 선언시에는 메타태그에 X-UA-Compatible 을 사용하면 w3c validator 에서 HTML5 DTD 는 X-UA-Compatible 속성이 없다는 오류를 냅니다.
그냥 무시하고 사용할 수도 있지만 'ㅅ';
더 좋은 방법으로 서버단에서 X-UA-Compatible 값을 응답 헤더에 포함할 수 있습니다.
서버단에서 설정
Apache 에서 설정
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
BrowserMatch MSIE ie
Header set X-UA-Compatible "IE=Edge,chrome=1" env=ie
</IfModule>
</IfModule>
<IfModule mod_headers.c>
Header append Vary User-Agent
</IfModule>
Nginx 설정
server {
#...
add_header X-UA-Compatible "IE=Edge,chrome=1";
}
IIS 7.0이상 설정
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="X-UA-Compatible" value="IE=edge,chrome=1" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
서버단에서 설정을 하게 되면 메타태그로 X-UA-compatible 을 넣지 않아도 됩니다.