2014-07-04 1 views
3

Chrome에서 완벽하게 작동하는 동안 내 JSTree가 IE8에서 정말 잘못 렌더링되는 이유에 대해 많이 연구했습니다. 적어도 문제 중 하나는 IE8의 CSS 속성 인 background-size에 대한 지원 부족입니다. 사용자 지정 아이콘을 사용하여 폴더 및 파일을 나타냅니다. 나무 구조의 각 선은 IE8에서 높이가 24 픽셀 (크롬이 40 인 경우)입니다. 후자의 브라우저는 background-size: auto;을 사용하여 자동으로 아이콘 크기를 감싸서 선 높이를 계산합니다. IE8은 그렇지 않습니다.JSTree 용 IE8 호환 CSS 테마를 어떻게 얻을 수 있습니까?

내가 좋아하는, IE8의 부족한 기능을 보충하기 위해 다른 많은 솔루션을 구현하기 위해 노력했습니다 :

How do I make background-size work in IE?

IE 8: background-size fix

과 연결된에 그러나 https://github.com/louisremi/background-size-polyfill

, jstree의 복잡성과 기본 css 파일로 인해 이러한 솔루션을 기존 코드에 구현하는 데 어려움을 겪고 있습니다. 경험을 통해 default.css의 구조를 완전히 이해할 수 있습니다.

이 작업을 수행하는 올바른 과정은 무엇입니까? 또한 IE8과 호환되는 .css 파일을 검색했지만 찾지 못했습니다.

내 .css를 처음부터 만들지 않고 완전히 이해해야한다는 두려움을 확인하는 답변도 매우 환영받을 것입니다. 그러나 나는 그 일을 할 시간을 투자하기 전에 두 번째 의견을 좋아할 것입니다.

편집 :

크롬이 좋은 공간을 가지고 있으며, 아이콘을 확장 볼 갈매기/화살표/: 이 내 현재 상황에서 스크린 샷입니다. 또한 글꼴이 작동합니다.

Chrome

IE8 대신 40px의 높이 24 픽셀을 만드는에는 자동으로 크기를가 없습니다. 필자는 수동으로 40 개로 설정하려고 시도했지만 행운은 없습니다. 시각적 기교가 부족해도 나를 괴롭히지는 않지만 아이콘을 확장하는 화살표가 부족하여 내 응용 프로그램의 유용성이 중요합니다. 현재 테마의

IE8

근무 편집이 답변으로 허용됩니다. 따라서 IE8과 호환되는 대체 테마로 연결됩니다. 또는 내가 직접 문제를 해결하는 방법을 이해하는 데 도움이되는 모든 것.

+0

피들링을 제공 할 수 있습니까? – falsarella

답변

3

가장 좋은 방법은 게시하시기 바랍니다 당신이 메타 태그

<meta http-equiv="X-UA-Compatible" content="IE=edge" /> 

그리고 한 가지 더를 추가 할 필요가 같은 페이지에 같은 많은 다른 것들이 있습니다

<!--[if IE 8]> 
    <link rel="stylesheet" type="text/css" href="ie8.css"> 
<![endif]--> 

IE8

에 대해 별도의 스타일 시트를 만드는 것입니다 우리가 문제의 실제 원인을 더 잘 추적 할 수 있도록 피들에 코드를 작성하십시오.

업데이트 :

또한이 수정 프로그램을 추가 한 후 확인 ..

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

나는 이것이 긍정적 인 것을 추가하기를 바랍니다.

업데이트 :

jsTree Demo를 확인한 후 나는 또 하나의 문제를 jQuery를 버전을 체결 할 수 있습니다.

jQuery v1.10.1 이상을 사용하는 경우. jQuery는 Internet Explorer 8과 같은 구형 브라우저의 지원이 없기 때문에 IE8을 지원하는 마지막 버전 인 v.1.9.1을 사용해야합니다.

+0

저는 메타 태그가 필요하다는 것을 알고 있습니다. IE가 호환성 모드로 들어가는 것을 막기 위해서, 평소보다 더 나빠질 수 있습니다. JSFiddle은 IE8에서도 작동하지 않으므로 중복 될 수 있습니다. IE8을위한 별도의 스타일 시트를 만드는 것과 관련해서는 선택 사항이지만 처음부터 그렇게하는 것은 시간이 많이 걸릴 것이므로 미리 만들어진 테마를 사용하는 것이 좋습니다. 내 질문에 관한 것입니다. 기본 JSTree 테마는 여기에서 사용할 수 있습니다. 앞서 언급했듯이 CSS는 최소한 배경 크기의 속성 때문에 IE8과 호환되지 않습니다. – KjetilNordin

+0

나는 당신의 페이지에 모든 j가 추가 된 후에 이것을 추가하는 것이 더 쉬운 방법을 보았습니다. 어떤 경우에는 매력이 당신의 경우에 어떻게되는지 보자. :) – MarmiK

+0

나를 도우려는 노력을 해주셔서 대단히 감사합니다. 내가 지금 일하고있는 동안, 나는 잠시 다른 일을 보도록되어 있었지만 가능한 한 빨리 되돌아 갈 것이다. ;) – KjetilNordin

0

ie8 브라우저가 css3 의사 요소 및 기타 자료와 호환되도록 만든 respond.js를 사용해보세요.

+0

이것이 내가 IE6- 8. README.md를 읽으십시오. – modiX