묻고답하기
익스플로러 8 미만 버전에서 사이트가 제대로 안보이는 현상
2010.02.07 09:03
안녕하세요?
XE로 홈페이지를 만들어서 운영중입니다
그런데 익스플로러 6이나 7 버전을 사용하는 사람에게는 아래 화면과 같이 상단 메뉴와 본문이 제대로 나오지 않습니다.
익스플로러 8.0 화면에서는 모든것이 제대로 나오는데요
혹시 왜 이런 문제인지 아시는분 답변 좀 부탁드립니다..
댓글 2
-
파파민
2010.02.07 10:58
-
아카스
2010.02.07 13:44
마이크로 소프트가 오랫동안 국제인터표준화기구인 W3C의 스타일시트 정의를 지키지 않아 생긴 문제점입니다.
웹페이지를 만드는 사람들은 익스의 전버젼을 모두 체크해서 CSS스타일을 정의하여 주지않으면 안됩니다.스타일시트는 마지막으로 선언된 스타일이 적용되므로 먼저 파이어폭스나 익스8용 범용 스타일시트를 만드신다음
차례로 아래와 같이 7용과 6용을 따로 선언해주세요..<link href="standard="stylesheet" type="text/css" charset="UTF-8" media="all" />
<!--[if IE 7]><link href="ie7.css" rel="stylesheet" type="text/css" charset="UTF-8" media="all" /><![endif]-->
<!--[if lte IE 6]><link href="ie6.css" rel="stylesheet" type="text/css" charset="UTF-8" media="all" /><![endif]-->이말의 뜻은 모든 브라우져 상태에서 standard.css를 읽은다음..페이지의 방문자가 ie7일때는 ie7.css를 참조하고
ie6이하의 경우에는 ie6.css를 참조한다는 뜻입니다..네이버와 같은 큰 포탈들도 사용하고 있답니다..ie5.5까지 정의해줄걸요..네이버는
(구글이 더이상 ie7이하의 버젼을 지원하지 않는다는 말뜻이 이런 쓸데없는 짓을 하지 않겠다는 뜻입니다.)위의 방법이 가장 보편적인 방법이고 다른 방법으로는 ie의 핵을 이용하는 방법이 있습니다만...ie7이상에서는 인식못하는
것을 ie6은 멍청하게 인식해서 생기는 문제들이죠... 하지만 위의 방법을 쓰면 그다지 핵까지 이용해서 스타일을 정의해줄
필요는 없습니다..가장 많이 생기는 문제가 익스버젼마다 제각기 margin값에 대한 정의가 다르며...float해석이 좀 틀리죠..
그래서 div안에 자리를 차지하지 못하고 밀려나거나 특정 div이 안보이는 현상이 생기기도 하는게 많이 생기는 현상이죠..뭐 파고 들자면 이것도 하나의 포스팅이 되므로 나머지는 www.google.com에서 ie6 css로 검색해보세요..
그럼 수고하세요
원인은 IE8과 그 이하 버전이 각각 코드를 해석하는 방법이 달라서 입니다.
현재 IE6에서 보이는 이 현상을 Drop(?) 현상이라고 하더군요. <--- 믿거나말거나 수준이니 참고만 하세요. ^^;;
해결법은 간단합니다. 아래로 떨어지는 우측칼럼의 폭을 현재보다 몇 픽셀만 줄이면 될 것입니다.
만일 CSS파일에서 폭 지정이 안되어 있으면 강제로 픽셀값을 주십시오. 예) width:668x;
단 % 값은 사용하지마십시오.
(귀속말 : 혹 안되더라도 양해를...^^)