Tôi đã nhìn thấy một vài câu hỏi tương tự ở đây mà không có câu trả lời thực sự. Hy vọng rằng ai đó để ý điều này ...IE bỏ qua các kiểu cho nội dung được tải động
IE 8 trở xuống từ chối áp dụng kiểu từ biểu định kiểu css được xác định trong tiêu đề khi chúng được tải trong một cuộc gọi jquery tài liệu.
Khách hàng hoang tưởng muốn NOBODY xem mã hoặc trang web nhà phát triển vì vậy tôi sẽ phải đưa ra một ví dụ ngắn. Ứng dụng khách muốn trang web chỉ hiển thị phần HTML có liên quan trên trang web "được đánh giá cao" gần như độc quyền. Vì vậy, trang web giống như một mạng lưới. Nếu bạn tải các trang web của bạn có được điều này:
<div id="content">
<section id="home">
<h1>Title</h1>
<p>Hi There!</p>
</section>
</div>
Sau đó onload tôi sử dụng jquery để render các trang xung quanh ...
$(document).ready(function(){
$('#content').append('<section id="about"><h1>About Us</h1></section>');
});
IE có thể xử lý này nhiều, nhưng khi nói đến việc tôn trọng tôi một cách cẩn thận âm mưu css, nó chỉ bỏ qua các phong cách và cười với tôi.
Trang web được định vị hoàn toàn với vị trí tuyệt đối, tấn chỉ mục z và một số lượng khủng khiếp của hoạt ảnh jquery. Các loại điều bạn không muốn có tái tạo trong một số cách ngu ngốc thêm cho một số kém hơn nhưng được sử dụng chủ yếu là trình duyệt. Thưa Chúa, xin hãy cho tôi biết một người nào đó đã tìm ra cách nào đó để có được IE để tôn trọng phong cách được xác định trên các yếu tố được tạo ra sau khi tải.
Bạn có ý tưởng nào không?
Tôi biết các đoạn mã thực được ưa thích nhưng điều này gọn gàng và cho bạn biết đủ mà không có kiểm tra toàn diện. Ngay cả khi kiểu được xác định duy nhất là #about {display: none; } nó bị bỏ qua. Phần giới thiệu được viết theo yêu cầu nhưng nó được hiển thị theo mặc định.
Tôi cũng biết điều này không phải là kỹ thuật ajaxing, nhưng tôi đang sử dụng thuật ngữ kỹ thuật để cố gắng làm rõ thứ tự tải trang nhiều như nó không phải là tiêu chuẩn tải html.
CÁC GIẢI PHÁP
$('#content').append($('<section>').attr('id', 'about').html('<h1>About Us</h1><p>some text</p>'));
đúng áp dụng các yếu tố cũng như css cho điều này và tất cả trẻ em. Không chắc chắn tại sao các phần tử lồng nhau được đọc đúng cách bởi IE mà không cần phải được khai báo theo cùng một cách, nhưng tôi chắc chắn biết ơn. Cảm ơn jfriend00 và mọi người đã giúp đỡ.
Bạn có được phép đăng một số css vi phạm không? Điều đó có nghĩa là chúng ta có thể kích hoạt mẫu trong trình duyệt của chính chúng ta. Thậm chí tốt hơn là nên đăng một mẫu trên http://jsfiddle.net/ để chúng ta có thể chơi với nó. – griegs
IE hoạt động hoàn toàn tốt với phong cách và lớp học. Tôi sử dụng nó mọi lúc với các yếu tố được thêm động. Để chúng tôi giúp đỡ, bạn phải cung cấp cho chúng tôi một ví dụ cụ thể không hoạt động trong IE và chúng tôi có thể giúp bạn tìm thấy những gì sai. Bạn không phải viết lại mã hoặc HTML hoặc CSS của mình. Bạn có thể chỉ có một số lỗi phân tích cú pháp ngớ ngẩn trong HTML hoặc CSS. Nếu bạn tạo một jsFiddle minh họa vấn đề, chúng tôi có thể giúp bạn khắc phục sự cố. – jfriend00
http://jsfiddle.net/eDqca/1/ Tôi bị tước bỏ hầu như không có gì. Không có lỗi hoặc cảnh báo. Các jsfiddle recretes như đã đề cập trong bài đăng này. jsfiddle đang gặp lỗi khi tải, nhưng vẫn đang trình bày sự cố –