如果你灌了Vista,一定會了解IE7跟IE6相容性是有差的!有多少人因為CSS或Javascript的語法相容性問題,拼了命的想在Vista上灌IE6,要不然只好乖乖的回去用XP,微軟習慣這樣搞,真的有人會期待IE8嗎?

 

其實並沒有那麼嚴重,在Vista上瀏覽只相容於IE6的網頁或許有以下幾個辦法:

一、VPC+IE6映像檔

這是微軟最早期,為了讓網頁開發人員測試相容性所提供的方法,利用VirtualPC掛載XP+IE6的影像檔(官方提供下載,但超過500MB),用虛擬機器的方式來跑IE6。不過一般人應該沒這種閒功夫,而且微軟不會讓人使用免費的XP那麼久,最新的釋出檔到08年7月就會過期。

How to run IE6 on Windows Vista using Virtual PC
Internet Explorer Application Compatibility VPC Image

二、IETester

DebugBAR是一個做IE除錯外掛的網站,IETester是用來同時測試IE 5.5、6、7、8Beta相容性的一個程式,藉由在一個視窗中開不同瀏覽核心版本的分頁來比較差別,其實已經有很基本的網頁瀏覽功能,很可惜的我可以在上面使用IE 5.5、7、8Beta的核心,唯獨 IE6 不行,而且還是有些問題尚未克服,比如Flash的顯示、上一頁下一頁的變更等等。

ietester.jpg

在頁框上看到的7跟8就是代表分別為IE7與IE8所開的網頁。

三、User Agent String Utility

這個東西有點治標不治本,User Agent String Utility主要只是利用了一個小技巧,讓IE7遇到一些不認識IE7的網頁時,把自已偽裝成IE6,告訴該網頁「我不是IE7,我是IE6!」,讓一些只認得IE6的網站不會再把IE7誤認為其它瀏覽器,而使用了不同的Javascript語法導致網頁無法正常顯示。微軟這麼說:「其實要解決這個問題的治本方法,就是請原網頁設計者更改原始碼來認得IE7,畢竟IE7多了很多好用的新功能唷!」,使用User Agent String Utility可以解決一些網頁顯示不正確的問題,但不相容的部份還是不相容,適用於IE6的語法有些就是無法在IE7上執行 。

uasu.jpg

按下「Change Setting」後,就會開啟一個再平凡不過的瀏覽器視窗,預設的標題會變成:「User Agent String Workaround – Windows Internet Explorer emulating version 6.0」,而使用Javascript一查瀏覽器的版本,會出現:「Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)」,User Agent String 是用來和HTTP標頭一起送出的字串,讓網頁伺服器知道你使用的是什麼瀏覽器, 進而提供不同的語法來顯示網頁。

.

說那麼多,其實還是沒有一個100%完美的解決方案,其它還可以找得到一些直接拷貝核心檔案的方法,不過有點舊了,而且應該會蠻不穩定的。

使用 Facebook 留言

7f524153d85c1ff8bd42b9222c58b9d4?size=48&default=wavatar
1.  蒼浩 (發表於 2008年5月20日 10:22)
我是用Vista,還是x64版,不過我沒有以上的問題,因為我根本不用IE(除了開網路atm以外...

跑虛擬機器還有一個做法:Linux + Wine + IEs4Linux
39a5df940e6262fd54f76f7348d8c8ff?size=48&default=wavatar
2.  呆宇 (發表於 2008年5月21日 00:37)
微軟自己活該,ie6玩一些特技,
現在知道多慘了吧?

那些網頁設計師也活該啦,
只知道ie6最多人用,都不知道ie6根本不標準還去支援它,
現在微軟大改,都死光光了。

發表回應

謹慎發言,尊重彼此。按此展開留言規則