2014-06-23 2 views
0

타사 제품이 iframe이있는 웹 페이지를 출력하고 컨텐트를 완전히 제어 할 수 없습니다. 기본 iframe에 doctype 선언이 누락되어 IE8이 강제로 quirks 모드로 설정됩니다.IE8 단점 모드에서 레이아웃 작업을 수행

화면의 오른쪽 가장자리에 여러 개의 버튼을 추가하는 자바 스크립트 애플리케이션을 유지 관리하고 있습니다. 문제는 레이아웃이 IE8 쿼크 모드에서 꺼져 있다는 것입니다. 버튼은 표시되지 않으며 (아마도 잘못된 IE Z- 색인 동작으로 인해) 위치가 해제됩니다.

저는 IE8 용으로 별도의 CSS를 만들려고했습니다. 쿼크 모드에서 CSS를 조정하려면 어떻게해야합니까? 당신이 (별도의) 자바 스크립트 파일을 제어 할 수 있습니다 수행과 JS 파일이 이미 머리라고 염치없는 경우

+0

[조건부 주석] (http://www.quirksmode.org/css/condcom.html)을 사용하십시오. – robertc

+0

@robertc - 그가 조건부 주석을 설정할 수 있다면 그는 또한 doctype을 설정할 수 없습니까? –

+0

@FrankConijn 제 이해는 : 그는 'iframe'에로드 된 페이지가 아니라 버튼으로 페이지를 제어합니다. – robertc

답변

0

,이처럼 html 요소에 조건부 클래스를 설정할 수 있습니다 :

<html> 
<head> 
    <title>Demo Conditional Class Quirks Mode</title> 
    <script type="text/javascript" src="folder/js_file.js"></script> 
    <style type="text/css"> 
    div { 
     width: 100px; 
     height: 100px; 
     background: red; 
     position: relative; 
     left: 100px; 
     } 
    .ieQM div { 
     left: 200px; 
     } 
    </style> 
</head> 
<body> 
    <div></div> 
</body> 
</html> 

js_file.js에 추가하는 동안 :

if (document.documentMode == 5) 
    document.documentElement.className += ' ieQM'; // IE in Quirks Mode 


그건 그렇고, 그것은 단지 doctype을 가지고 있지 않은 IE8의 문제 일까? 모든 IE가 IE 없이는 쿼크 모드로 복귀하지 않습니까?

관련 문제