2011-02-04 43 views
13

Tôi có một ứng dụng cũ sử dụng khung (không phải iframe) đã được viết trở lại trong IE6 ngày để nó chạy trong chế độ quirks.Chạy chế độ quirks trong một chế độ khung và chế độ chuẩn ở chế độ khác?

Có thể (Sử dụng IE 7 hoặc 8) để có một khung vẫn ở chế độ quirks và một khung ở chế độ tiêu chuẩn hoặc phải toàn bộ trình duyệt ở chế độ này hay chế độ khác?

Tôi đã cố gắng không thành công.

Tôi đã xem this answer, áp dụng cho iframe, nhưng còn về khung hình cũ thì sao?

Trả lời

9

Tôi tin rằng bạn không có tùy chọn tương tự với khung như bạn làm với iframe. Như câu trả lời của câu hỏi được liên kết đã nêu, mục tiêu trong iframe không phụ thuộc vào cha mẹ. Trong khung hình thông thường, tất cả các trang đều dựa vào phụ huynh. Tôi không nghĩ rằng bạn có thể tách các loại ra.

+1

này làm việc cho IE8, nhưng nó không hoạt động nữa cho IE9. Doctype cho iframe được kế thừa từ trang gốc và không có cách nào ghi đè iframe trong khung nội tuyến ... –

2

Tôi không chắc chắn liệu điều này có hữu ích hay không, nhưng theo trung tâm Mozilla Dev Firefox, các quyết định về quirksmode chỉ dựa trên doctype.

https://developer.mozilla.org/en/Mozilla's_DOCTYPE_sniffing

Bạn sẽ nhận thấy việc sử dụng DOCTYPE frameset cũ gây nên chế độ "gần như tiêu chuẩn", có thể hiển thị như quirksmode.

+0

Hmmm. Tôi có thể nói từ cách bố trí của tôi rằng đó chắc chắn là chế độ quirks. –

+1

Tôi không chắc chắn về sự khác biệt giữa chế độ "gần như quirks" và "quirks" (phỏng đoán có lẽ gần với quirks vì nó hiển thị như thế cho bạn), nhưng chắc chắn bạn sẽ không nhận được tiêu chuẩn đầy đủ chế độ với một loại tài liệu khung. –

0

Nếu bạn có thể thay đổi mã (hoặc HTML) của ứng dụng, bạn có thể thêm một thẻ meta (ngay dưới đầu), vì vậy nó buộc IE để render nó trong chế độ Quirks, như thế này:

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

+0

Không, thẻ meta không giúp được (tôi đã thử nghiệm). –

1

Xem câu trả lời của tôi ở đây để giải quyết MSDN-tài liệu cho IE9: How to force Iframe to run quirks under a standard parent frame

Nói tóm lại, nó không phải là có thể kích hoạt chế độ quirks trong một khung (hoặc iframe) nếu trang mẹ được vẽ trong chế độ IE9, nhưng nó có thể để kích hoạt "chế độ quirks e mô phỏng " được nhúng trong công cụ hiển thị IE9.

JSBin demo: http://jsbin.com/ozejuk/1/

Tiếp tục đọc: http://msdn.microsoft.com/en-us/library/gg558056(v=vs.85).aspx

Các vấn đề liên quan