NARADESIGN

웹표준, 웹접근성, 유니버설디자인, HTML, CSS, UI, UX, UD


HTML/CSS 코드가 IE 6~7을 강제 종료시키는 버그.

본문 건너 뛰기

특정 HTML/CSS 코드가 IE6, IE7 브라우저를 강제로 종료시키는 사례가 있습니다. 전혀 특별할 것도 없는 일반적인 코드이지만 다음과 같이 특정 조건이 충족되면 IE 브라우저를 강제로 종료시켜 버립니다. HTML/CSS 코드가 브라우저를 강제로 종료시키는 버그를 지니고 있다는 것은 상상하기도 어려운 일입니다. IE6는 바로 종료되고 IE7은 첫 번째 목록을 클릭-드래그 하는 상황에서 종료 됩니다. 여러분들의 잘못이 아닙니다.

IE6를 강제 종료시키는 코드

CSS

a { position:relative; }
a:hover { float:left; }

HTML

<a href="#">IE6 브라우저라면 강제로 종료될 것입니다.</a>

Demo

http://naradesign.net/open_content/bug/crash_ie6.html

IE7을 강제 종료시키는 코드

CSS 

div { float:left; width:175px; }
ul { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
li { position:relative; }

HTML 

<div>
    <ul>
        <li>IE7 브라우저라면 강제로 종료될 것입니다.</li>
        <li>IE7 브라우저라면 강제로 종료될 것입니다.</li>
    </ul>
</div>

Demo

http://naradesign.net/open_content/bug/crash_ie7.html

해결방법

position:relative 속성이 적용된 엘리먼트에 zoom:1 속성을 추가로 부여하면 더 이상 강제로 종료되지 않습니다.

a { position:relative; zoom:1; }
li { position:relative; zoom:1; }

참조

CSS让你的IE浏览器崩溃

 

분류: CSS,웹 표준 | 2008년 12월 27일, 4:14 | 정찬명 | 댓글: 22개 |
트랙백URI - http://naradesign.net/wp/2008/12/27/416/trackback/

22개의 댓글이 있습니다.

  1. 입명이 댓글:

    오~ 그런게 있군요. ㄱㅅ

  2. pengdo's me2DAY 댓글:

    펭두잉의 생각…

    a { position: relative; } a:hover { float: left; } // 이 코드는 IE6을 강제로 종료시키는 코드입니다 [via 나라디자인]…

  3. 정태영 댓글:

    IE6 를 강제로 종료시키는 코드 부분에서 ‘Demo’를 ‘Domo’라고 오타내셨네요. :)

  4. 길앞잡이 댓글:

    와 이거..
    게시판같은데서 악용할수도 있겠는데요?

  5. 정찬명 댓글:

    와~ 태영님 감사해요. 이게 제 눈에는 잘 안보인단 말이죠. ㅜㅜ;

  6. 정찬명 댓글:

    style 요소를 본문에 사용하도록 허용하는 경우라면 충분히 악용될 소지가 있습니다.

  7. 드자이너정 댓글:

    “여러분들의 잘못이 아닙니다.” … 이 문구가 감동으로 다가옵니다. 이게 왠일임까~

  8. azki 댓글:

    음.. 저는 왜 안될까요 ;ㅂ;
    IE7 (7.0.6001.18000) 버전인데 종료되지 않네요..
    http://naradesign.net/open_content/bug/crash_ie7.html

  9. 정찬명 댓글:

    IE7은 로딩 후 즉시 종료되지 않더라구요. 첫 번째 목록을 클릭-드래그 하다보면 종료 됩니다.

  10. Na! 댓글:

    알면 알수록 신비한 IE6… –;
    IE 8 Beta2는 정상인것 같습니다.

  11. 정찬명 댓글:

    IE 8이 정상이라니 불행중 다행입니다. 당연히 그래야겠죠. ^^; 지금 초중등 학교에 다니는 저희 꿈나무 후배들은 보다 쾌적한 환경에서 일할 수 있겠네요. 감사합니다.

  12. 꼬냉 댓글:

    그런데 왜 저런거죠? 그리고 zoom:1 이 어떤 역할을 행하였기에 그걸 막을수 있는건가요? ^^;;

  13. 정찬명 댓글:

    MS IE에는 표준 스펙에 존재하지 않는 haslayout 이라는 속성이 존재하는 데요. 저도 haslayout이 어떤 특징을 갖고 있는지 정확하게 이해하지는 못하고 있습니다. zoom 속성도 MS IE 전용 속성인데 이 속성을 적용하게 되면 haslayout 이라는 속성을 가질 수 있고 이것이 버그를 유발하지 않도록 뭔가 작용하고 있는것 같습니다. 하여튼 IE 세계는 오묘해요. ㅎㅎ.

  14. 꿈트리 댓글:

    그래서 IE가 잼있는거 같아요.^^
    왠지 더 알고 싶고 관심이 가는것 같아요.^^
    위와 같은 버그는 일본 쪽에서도 작업 중에 발견했었는데요
    저는 position을 포기 하고 돌아가는 방법으로 다가. -_-
    월요일에 회사가면 소스 확인하고 test함 해봐야겠어요.^^
    좋은 하루 되세요

  15. 강짱 댓글:

    IE는 정말 오묘오묘~
    알다가도 모를 haslayout 은…
    저도ㄷㄷㄷ

  16. 황규연 댓글:

    가끔보면 ie6에서 zoom속성이 이쁜짓을 할때가 있습니다.^^;
    어떤분 zoom이 얼마나 좋으셨는지 css를 보니 소스안에 줌줌줌줌…이 들어간걸 보았습니다….하하하..

  17. 정찬명 댓글:

    zoom을 너무 남발해서는 안되겠지만 그랬다고 해서 또 미워할 수도 없어요. ㅎㅎㅎ.

  18. 앵겨 댓글:

    IE6의 코드는 거의 사용될 일이 없을거 같은데…
    IE7의 코드는 왠지 사용될 코드로 보이네요…좋은 정보 감사합니다~!!^^

  19. 정찬명 댓글:

    네, 혹시라도 IE 다운되면 다시 찾아와 주세요. ^^

  20. ssamss 댓글:

    헐 7에서 드래그 해보니 아예 브라우져에러가 나버리네요

  21. HTML/CSS 코드가 IE 6~7을 강제 종료시키는 버그. …

    특정 HTML/CSS 코드가 IE6, IE7 브라우저를 강제로 종료시키는 사례가 있습니다. 전혀 특별할 것도 없는 일반적인 코드이지만 다음과 같이 특정 조건이 충족되면 IE 브라우저를 강제로 종료시켜 …

  22. 위찬우 댓글:

    이런 버그 땜에 완전 고생했었는데

댓글 쓰기

전송된 글이 나타나지 않는다면 필터링 된 것입니다. dece24앳gmail.com 으로 메일 주세요.
(X)HTML 코드 사용이 가능하지만 소스 코드 출력을 원하시면 <꺽쇠>는 [괄호]로 변환하여 작성해 주세요.

필수 아님

필수 아님