2012-04-06 3 views
0

브라우저가 IE8 미만인지 확인하는 방법에 따라 모든 CSS 스타일을 제거 할 수있는 방법을 알고 싶습니다.브라우저 버전에 따라 모든 스타일 제거

IE7이 감지되면 모든 스타일을 제거합니까? 이 jQuery를 통해 가능한지 궁금해?

윌이 수정 대부분 IE7 문제 : 당신은 브라우저 버전에 대한 모든 스타일을 제거 할 이유

<!--[if lt IE 7]> 
<script src="http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE7.js"></script> 
<![endif]--> 
+1

IE 버전이 _7보다 낮은지, 즉 IE6 이하인지 확인합니다. 당신은 아마'[if IE 7] 또는 [if IE 8]을 의미했을 것입니다. –

답변

1
<!--[if lt IE 8]> 
    <body class='oldIE'> 
<![endif]--> 
<!--[if gte IE 8]> 
    <body class='ok'> 
<![endif]--> 
<!--[if !IE]> 
    <body class='ok'> 
<![endif]--> 

모든 스타일이없는 IE7을 접두사해야합니다 :

+0

나는 lt8 IE8을 사용한 다음 IE8 또는

2

모르겠어요. IE7에 CSS 문제가 있다고 생각합니다. CSS를 모두 지우지 않고 수정하는 좋은 방법은 ie7.js : http://code.google.com/p/ie7-js/을 사용하는 것입니다.

여기에 수행 할 수있는 것의 demo입니다.

또한이 스크립트에는 IE8 및 IE9 용 버전이 있습니다. 여기

// Identity browser and browser version 

if($.browser.msie && parseInt($.browser.version) == 7) { 

    // Remove class name 
    $('.class').removeClass('class'); 

    // Or unset each CSS selectively 
    $('.class').css({ 
     'background-color': '', 
     'font-weight': '' 
    }); 

} 
+0

헤더에 붙여 넣기 만합니까? –

+0

내 편집을 확인 하시겠습니까? .... –

+1

ie7.js는 질문 한 것처럼 CSS를 제거하지 않습니다. 그것은 단지 IE7이 다른 버전/브라우저와 같은 방식으로 동작하도록 만듭니다. – hohner

0

가장 좋은 해결책은 요소에 대한 전체 CSS를 닦아보다는 특정 클래스 이름을 제거하는 것입니다 .ok

으로 적용하는 또 다른 방법이 될 것이다

<!--[if lt IE 8]> 
    //include an old IE specific stylesheet or none at all 
<![endif]--> 
<!--[if gte IE 8]> 
    //include your stylesheets 
<![endif]--> 
<!--[if !IE]> 
    //include your stylesheets 
<![endif]--> 
+0

은 내가 예를 들어 UL.tiles에 5 가지 스타일을 가지고 있기 때문에 가능합니다. 기본적으로 인터넷을 처음 시작할 때처럼 페이지를 만들고 싶습니다. 아니면 그냥 페이지로 리디렉션, IE7 짜증. –

+0

스타일 시트 규칙이있는 경우 "unsetting css"를'.css' (인라인 스타일을 편집)로 처리하지 않습니다. 또한 모든 CSS 규칙이 클래스 기반이 아닙니다. – Esailija

관련 문제