2013-07-09 154 views
0

我的頁面在除IE 7以外的所有瀏覽器中都能正常工作。在IE7中,div完全脫離了他們的位置。我懷疑它是由於使用position:fixed。儘量多使用正確的doctype,但仍然無濟於事。另外IE7說它在標準模式下渲染,所以我不知道問題是什麼。 這裏是jsfiddle鏈接: http://jsfiddle.net/FgXS4/佈局完全搞砸了IE 7

+0

jsfiddle在IE7中不工作 – mishik

+0

r你給該浮動div? –

+0

@mishik - jsfiddle的編輯用戶界面在IE7中不起作用,但是輸出頁面不起作用;嘗試http://jsfiddle.net/FgXS4/embedded/result/ – Spudley

回答

2

IE7已知與position:fixed嚴重的問題。

如果你需要支持IE7,你最好的選擇是忘記瀏覽器的固定位置,並讓元素滾動頁面的其餘部分。編寫一個自定義樣式表,僅針對覆蓋標準CSS的IE7,並讓IE7用戶的瀏覽體驗稍微降低。這是我最好的選擇。

有人試圖解決這個問題,特別是,它在舊的IE版本中實現了一整塊補丁,試圖讓它們符合現代標準。這是一個偉大的小腳本。它不能做任何事情,它確實不會奇蹟般地把IE7變成IE9,但它可能有助於解決這個問題(我知道它有補丁,專門處理IE7的position:fixed錯誤),所以它可能是值得的它一去。

當然,您的其他選擇是停止支持IE7。坦率地說,這可能是一個很好的答案。使用IE7的人數正在迅速下降(甚至比IE6還要快);它的使用數字非常低,並且每個月都在降低。你可能會發現自己做了很多工作來解決這個問題,然後幾乎沒有人從中受益。如果你完全放棄對IE7的支持,你可以節省很多時間。如果你很幸運,也許沒有人會注意到。 (即使他們注意到,也許它會給他們一個微調,他們需要升級他們的瀏覽器!)

+0

如果是我,我肯定會停止支持IE瀏覽器。我的意思是有道理的。你有一個劣質的產品,所以你得到一個劣質的經驗。不是我的問題。儘管由於一些公司政策,我必須遵循它。我試試你提到的IE9.js。 – Aneesh

+1

@ user2067771 - 如果您不能影響公司政策,那就夠公平了。但值得注意的是,公司政策必須在某個時候改變(否則你仍然會支持IE5!)。鑑於許多國家的IE7使用率低於IE6,政策更新可能是時候了。如果你有任何影響,現在是時候使用它。看看[統計數據](http://gs.statcounter.com/#browser_version_partially_combined-ww-monthly-201106-201306);這應該足以說服任何人IE7不再值得,因爲它創造了額外的工作量。 – Spudley

+0

謝謝。雖然我目前在公司政策中沒有發言權,但您說服我停止在我的個人網站上提供給IE7的任何一點支持。 – Aneesh