서버에 따른 AlphaImageLoader 미작동

작업을 하다보면 png이미지로 처리하고싶은 유혹에 빠질때가 몇번씩은 있다. 배경색이 복잡한 투명 object나 투명도가 들어간 백그라운드는 gif로 작업하려면 상당한 시간과 짜증이 유발되기 때문인데 개인적인 취향으로 ie6 png hack은 보통 아래와같은 AlphaImageLoader를 사용한다.

.pngbg { background-image: url(bg.png); }

* html .pngbg {
	background-image: none;
	filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="bg.png", sizingMethod="crop");
}

이 방식은 지금까지 수도없이 사용했던 방식이었고 테스트서버에서도 아무런 문제가 없었는데 본서버로 데이터를 옮기자 ie6에서 png이미지가 아예 로딩되지 않는 문제가 발생했다.

  1. 동일한 파일인데도 특정서버에서는 png이미지가 로딩되지 않는다.
  2. filter를 지우고 저장한뒤 페이지를 리로드해보면 hack이 적용안된 이미지가 보인다.
  3. 다시 filter를 주고 저장한뒤 페이지를 리로드하면 제대로 png hack이 적용이 된다. :D
  4. 페이지를 이동한뒤 다시 확인해보면 이미지가 사라져있다. :(

아마 서버상의 캐쉬관련 세팅문제일거라고 추측은 되는데 확인할 재주가 없어 gif노가다로 처리할 수 밖에 없었다.

황금같은 주말이브를 말아먹어주신 ie6 ㄱㅅ

ps. png8을 이용한 크로스브라우저를 지원하는 투명png를 만드는 방법이 있긴하다. (링크수정)

Archives...