2012-09-17 41 views
10

我在以怪癖模式運行的頁面中有一個iframe(我無法控制包含頁面),並且我需要我的頁面以模式與現代瀏覽器功能兼容。當頁面處於怪異模式時,iframe沒有呈現在ie9模式下

包含的頁面大量使用較新的JavaScript功能(特別是漂亮的數組函數)和SVG渲染。雖然我可以輕鬆地將數組函數填滿,但我無法強制渲染svg。

要清楚,內頁不在怪癖模式下運行 - 我已經指定了doctype和ie = edge < meta>標記。它看起來像它的使用IE8渲染模式 (很難肯定)

問題的樣品是在這裏:http://stevesspace.com/quirks/quirks.html - 加載它在Chrome中看到預期的輸出,並檢查它在IE9或10實際產出。

編輯:我已經將文檔模式和兼容模式添加到示例中,我可以確認它使用IE8文檔模式。

+0

可能重複[威爾在怪異模式下的iframe渲染?](http://stackoverflow.com/questions/3717932/will-an-iframe-render-in-quirks-mode) – GolezTrol

+0

顯然,自從IE9以來,文檔類型被繼承了。您的測試是正確的:頁面在IFrame內部變爲紅色,但不是在IFrame(IE)之外打開時,或者在Chrome中完全打開。現在如何解決它...我不知道。 : - /很好的問題,但有很好的證據。 – GolezTrol

+0

下面是關於如何至少解決由於此問題而導致的任何CSS問題的提示。不過,並沒有解決怪癖模式。 http://css-tricks.com/ie-iframe-quirksmode/ – GolezTrol

回答

7

我結束了使用對象標記而不是iframe,它似乎在現代瀏覽器中正常工作。

<object type="text/html" data="http://example.com"></object> 

事實證明,你不能修改IE9使用JavaScript的URL,但是這不是一個大問題 - 刪除/添加一個新的對象元素的作品一樣好這一點。

更新: 這個標籤,也可以在中間頁的iframe指向,這一切工作正常 更新2: 該解決方案不IE10工作的

+1

這是不正確的,這不適用於IE9。 –

+0

你可以擴大嗎?對我來說工作得很好。 – XwipeoutX

+0

在IE10中,解決方案會發生什麼情況? IE10中的iframe解決方案似乎讓父母成爲怪癖,而內在的IE10標準模式,這是你想要的,我想。 –

相關問題