IE 하위버전을 위한 팁!

sunhwa
UFOfactory org
Published in
3 min readFeb 29, 2016

프로젝트를 하다보면 IE 하위브라우저가 늘 골치가 아프다.
특히 IE8은 누구나 공감하듯이 헉 소리 나는 부분이 아닐까.
IE 하위버전을 위한 팁을 정리해보았다.

1. modernizr 라이브러리와 respond 라이브러리

전반적인 그리드가 페이지가 깨져 보인다면?<HEAD>에서 선언되는 자바스크립트 라이브러리를 확인해보자.

/[if lt IE 9] 
<script src="https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>

다른 자바스크립트 라이브러리보다 먼저 선언이 되어야 한다.

[ Modernizr ]
- Modernizr는 사용하는 브라우저에서 HTML5와 CSS3 기능들의 지원여부를 점검하는 자바스크립트 라이브러리이다.
- true/false로 반환되며, if(Modernizr.test) { // } 형태로 작성한다.

[ Respond ]
- IE6 ~ IE8에서 미디어쿼리를 지원하는 라이브러리이다.

2. IE9/IE8에서 CSS가 적용이 안 된다면?

작업을 하고 ie에서 테스트를 하는데 부분부분 css가 깨진다면 ?
아래의 리스트를 확인해보면 된다.

  • CSS 파일 크기가 288kb를 넘는가?
  • selector가 4096개를 넘는가?
  • @import 를 사용하여 32개가 넘는 파일을 불러오는가?
  • css파일 안에 다른 css파일을 import하는 파일을 import하는 경우가 있는가? ( test.css > test_2.css > test_3.css )

css파일을 나누거나 합치는 방법을 통해 해결가능하다.

3. IE8을 위한 css 팁

ie8에서는 지원하지 않는 css가 많아서 css hack이 필요한 경우들이 있다. 필수요소이거나 아예 ie8에서 깨지는 방법을 회피하는 방법을 사용해보자

  1. background-size: cover
  • backgroundsize.min.htc 사용
  • css에 filter 추가
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(
src=’’,sizingMethod=’scale’);
-ms-filter: “progid:DXImageTransform.Microsoft.AlphaImageLoader(
src=”,sizingMethod=’scale’)”;

2. background-color: rgba(255,255,255,0.6)

  • opacity가 들어간 이미지로 작업
  • css에 filter추가
filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";

3. iframe z-index 이슈 // iframe src 맨 뒤에 ?wmode=transparent 추가

--

--