2012-05-29 73 views
0

我正在構建一個在IE8和Mozilla Firefox中正常工作但在IE7中不能正常工作的應用程序。我喜歡firebug,我喜歡使用它來調試我的應用程序,但是目前我正在努力解決瀏覽器兼容性問題。我發現開發的應用程序在IE8,FF11中工作,但不在IE7中(主要是佈局受到很大影響)。我正在使用jQuery的瀏覽器相關的功能和jQuery的東西似乎工作..我該怎麼做才能使佈局在IE7中工作正常? 使用的框架是spring3,休眠.. 我有大量的CSS我不認爲粘貼,這裏將是任何有用的。我已經使用位置相對和使用頂部,左側位置一些東西.. padding和邊距使用,但不是很多..這是原因嗎?有什麼可能的建議?爲什麼IE7和IE8以不同的方式渲染東西?我應該使用spring爲IE7加載不同的CSS集合嗎?這是不錯的解決方案嗎?如果是的話,那麼春季怎麼做? 我應該放棄使用螢火蟲,並依靠IE8調試器,因爲我們的客戶端主要使用IE7如何使應用程序瀏覽器兼容

+2

破解客戶端的計算機並安裝Firefox:P JK –

+0

你真的應該嘗試格式化您的問題到人類可讀的形式。我在第一句話後放棄了。 (在這裏幾乎沒有線斷,不會有傷害) – Joonas

+0

Internet Explorer兼容性,歡迎來到地獄 – allen213

回答

0

瀏覽器兼容性是一個非常冗長的話題,它涵蓋了多個要正確執行的區域。

如果IE 7或IE瀏覽器是您唯一的問題,那麼CSS Conditional comments就是您的PERFECT解決方案。

爲IE7瀏覽器創建一個單獨的樣式表,並附帶所有必要的修復程序。然後調用腳本就是這樣,只有IE 7纔會渲染它。現在

<!--[if IE 7]> 
    <link rel="stylesheet" type="text/css" media="screen" href="ie7fix.css" /> 
<![endif]--> 

,上面的樣式表僅適用,在情況下,如果瀏覽器是IE 7,那麼,所有的修正將被應用,這樣的佈局將是固定的。 :)


要了解更多有關條件註釋,閱讀this article

0

您的應用程序的用戶界面也可以針對IE7進行優化。 你必須爲IE7添加一些特定於IE7的CSS,以便在IE7中引起問題(如位置等)。 在你的CSS屬性添加一個點之前。喜歡。

h1{ 
    font-size: 28px; 
    color: #d39933; 
    padding-bottom: 5px; 
    .padding-bottom: 10px; //For IE7 
} 
0

IE7和IE8有不同的CSS支持,不同的bug和怪異。通常的做法是在這些瀏覽器中有條件地加載CSS,以解決那些與解釋CSS的標準方式相背離的問題。您可以使用IE條件註釋加載額外的CSS:

<!--[if IE 7]> 
<link rel="stylesheet" type="text/css" href="/css/ie7.css" /> 
<![endif]--> 

這裏的有條件評論文章你纔可能有興趣閱讀:http://www.quirksmode.org/css/condcom.html

0

。在你的情況下,沒有神奇的解決方案,你將不得不受苦; =),但我可以給你一些提示,這將有所幫助。 1/IE的內置調試器在不同版本上得到了改進,因此您應該使用最新版本的IE進行調試,並使用調試器窗口(F12)中的「瀏覽器模式」組合框將其設置爲「Internet Explorer 7「,它工作得很好,我從來沒有發現這種模式和真正的IE 7有區別,並且您具有IE 9的調試功能。

2 /在IE7中有一些錯誤,你將不得不在特定的CSS或JavaScript中解決某些情況,但是佈局的差異並不總是一個錯誤。 IE7中的佈局問題通常是由不同瀏覽器以不同方式解決的問題約束的結果。典型的例子:在絕對位置,你指定左,右和寬度,有太多的約束和不同的瀏覽器不會以完全相同的方式處理。

3/IE特定的CSS

<!--[if IE 7]> 
<link rel="stylesheet" type="text/css" src="/css/ie7.css" /> 
<![endif]-->