여기에 몇 가지 비슷한 질문이 있습니다. 누군가가이 사실을 알기를 바랍니다.IE는 동적으로로드 된 내용의 스타일을 무시합니다.
IE 8은 document.ready jquery 호출에서로드 될 때 헤더에 정의 된 CSS 스타일 시트에서 스타일을 적용하는 것을 거부합니다.
편집증 클라이언트는 NOBODY가 코드 또는 dev 사이트를보고 싶어하므로 간단한 예를 들어야합니다. 클라이언트는 거의 독점적으로 "ajaxed"사이트에서 HTML의 관련 부분 만 렌더링하려고합니다. 따라서 사이트는 그리드와 같습니다. 당신이 홈페이지를로드 할 경우이 얻을 :
<div id="content">
<section id="home">
<h1>Title</h1>
<p>Hi There!</p>
</section>
</div>
다음
나는 주위의 페이지를 렌더링하는 jQuery를 사용하여 온로드 ...
$(document).ready(function(){
$('#content').append('<section id="about"><h1>About Us</h1></section>');
});
IE가 훨씬이 문제를 해결할 수 있지만, 조심스럽게 내 존중에 관해서
음모를 꾸민 CSS, 그냥 스타일을 무시하고 나에게 웃음.
이 사이트는 절대 위치 지정, 엄청난 양의 z- 색인 생성 및 엄청난 양의 jquery 애니메이션으로 완전히 배치됩니다. 열등하지만 우세하게 사용되는 일부 브라우저에 대해 다소 어리석은 방식으로 다시 만들고 싶지 않은 종류의 것입니다. IE를로드 후 생성 된 요소에 정의 된 스타일을 존중하도록하는 방법을 알아 냈습니다.
아이디어가 있으십니까?
실제 코드의 덩어리가 선호됩니다. 그러나 이것은 간결하며 완전한 손상 감사 없이는 알려줍니다. 유일하게 정의 된 스타일이 #about {display : none; } 무시됩니다. about 섹션은 요청한대로 작성되지만 기본적으로 표시 블록입니다.
또한 기술적으로 ajaxing이 아니라는 것을 알고 있습니다.하지만 표준 적재 된 HTML이 아닌 페이지 로딩 순서를 명확하게하려고 기술적 전문 용어를 사용하고 있습니다.
이 솔루션은
$('#content').append($('<section>').attr('id', 'about').html('<h1>About Us</h1><p>some text</p>'));
제대로 요소뿐만 아니라이 모든 아이들을위한 CSS를 적용한다. 왜 중첩 된 요소가 같은 방식으로 선언 될 필요없이 IE에 의해 올바르게 읽히지는 모르겠지만, 나는 정말로 감사하고있다. jfriend00과 도움을 준 다른 모든 사람들에게 감사드립니다.
문제가되는 CSS를 게시 할 수 있습니까? 그러면 우리 브라우저에서 샘플을 불러올 수 있습니다. http://jsfiddle.net/에서 샘플을 게시하는 것이 더 좋을 것이므로 우리는 스스로 해결할 수 있습니다. – griegs
IE는 스타일과 클래스에서 완벽하게 작동합니다. 동적으로 추가 된 요소를 사용하여 항상 사용합니다. 우리가 도울 수 있도록 IE에서 작동하지 않는 구체적인 예를 제시해야하며 잘못된 것을 찾는 데 도움을 줄 수 있습니다. 코드 나 HTML 또는 CSS를 다시 작성할 필요가 없습니다. HTML 또는 CSS에서 바보 같은 구문 분석 오류가 발생했을 수 있습니다. 문제를 설명하는 jsFiddle을 작성하면 문제를 해결하는 데 도움을 줄 수 있습니다. – jfriend00
http://jsfiddle.net/eDqca/1/ 나는 거의 아무것도 벗겨 냈습니다. 오류나 경고가 없습니다. jsfiddle은이 게시물에서 언급 한 것처럼 recretes. jsfiddle는 onload 오류가 발생하지만 여전히 문제를 시연 중입니다 –