如何立即修正我的網站?
注意:本文件只是初步文件,日後可能隨時異動。
兼顧新功能與現有網頁的網站相容性,是開發 Windows Internet Explorer 時的基本考量。 Windows Internet Explorer 8 引進了相容性模式,可以輕鬆將舊版標準轉換成新標準。如需有關 Windows Internet Explorer 8 相容性模式的詳細資訊,請參閱下列文件。
本文件將帶領您完成修正網站的必要步驟,讓網站可以順利呈現在 Windows Internet Explorer 8 中。
快速的短期修正
您有一個適用於 Windows Internet Explorer 7 的現有網頁,而您想要進行最少的修改作業,將更新後的網頁用於 Windows Internet Explorer 8 ,此時有兩種方法可用。您可以在每一個網頁加入相容性模式中繼標籤,強制 Windows Internet Explorer 8 以 Windows Internet Explorer 7 的方式呈現網頁。或者,您也可以在握有網頁伺服器控制權的情況下,設定伺服器傳送自訂 HTTP 回應標頭 ( 等同於每一個網頁的中繼標籤 ) 以自動新增相容性。
如何修改每個網頁
請將下列 HTML 中繼標籤放到各網頁的 HEAD 項目中 ( 在 TITLE 或 META 之外的標籤前面 ) :
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/> ``
這會告知 Windows Internet Explorer 8 以 Windows Internet Explorer 7 的方式呈現每個網頁,修正您的網站。
如何設定伺服器自動修改各網頁
如果要在每個網頁自動加入類似於 HTML 中繼標籤的相同相容性,請設定您的伺服器傳送下列標頭:
X-UA-Compatible:IE=EmulateIE7 ``
要設定 Microsoft Internet Information Services (IIS) 7.0 ,請如下設定 Web.config 檔案:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<add name="X-UA-Compatible" value="IE=EmulateIE7" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
( 請將 Web.config 檔案加到您要套用變更的目錄中 )
請注意,出現在網頁實際標記中的中繼相容性模式參數標籤,一定會優先於 HTTP 標頭宣告。
如需如何設定網頁伺服器 (包括 IIS 6.0 ) 傳送自訂 HTTP 回應標頭的詳細資訊,請參閱下列文件。
這些短期修正方法,只建議在您需要快速且暫時修正網頁時使用。您最終還是需要修改網站,讓網站傳送標準程式碼到 Windows Internet Explorer 8 以上版本,並將舊版程式碼傳送到舊版的 Windows Internet Explorer 。
建議使用的永久性解決方案
您有一個適用於 Windows Internet Explorer 7 的現有網頁,而您想要建立一個可以正確用於 Windows Internet Explorer 8 的標準網頁,並且在特殊情況下仍可處理舊版瀏覽器,此時可以採用永久性的解決方案。當您將新的CSS 2.1功能加入主頁面流程之後,您必須將相容性模式設為 IE8 Standards ,並使用條件式註解提供舊版 Windows Internet Explorer 的修正。
將相容性模式設為 IE8 Standards
請將下列 HTML 中繼標籤放入各網頁的 HEAD 項目上方 ( 在 TITLE 或 META 之外的標籤前面 ) :
<meta http-equiv="X-UA-Compatible" content="IE=8"/> ``
這會告知 Windows Internet Explorer 8 使用 CSS 2.1 標準呈現每個網頁。
您也可以按照以下示範,設定網頁伺服器以進行整個網站的變更;只要將內容值變成 “IE=8” 即可。請記住,任何網頁層級的中繼變更均優先於標頭值,所以可能需要變更或移除任何網頁層級標頭。
使用條件式註解讓網站依然適用於舊版瀏覽器
下列程式碼範例示範了如何使用條件式註解,針對目前或舊版的 Windows Internet Explorer 使用適當的 CSS 。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN">
<html>
<head>
<title>Test Page</title>
<meta http-equiv="X-UA-Compatible" content="IE=8"/>
<!--[if gte IE 8]>
<style type="text/css">
body {
color:#0000ff;
background-color:#000000;
}
</style>
<![endif]-->
<!--[if lt IE 8]>
<style type="text/css">
body {
color:#000000;
background-color:#ffffff;
}
</style>
<![endif]-->
</head>
<body>
<h1>
<!--[if gte IE 8]>
Chapter 1.
<![endif]-->
First Chapter
</h1>
<h1>
<!--[if gte IE 8]>
Chapter 2.
<![endif]-->
Second Chapter
</h1>
Text any version will see.
</body>
</html>
如需有關瀏覽器偵測技巧的詳細資訊,請參閱下列文件。
以上說明的永久性解決方案,是我們最建議用來修正網站的方法。只要遵守這些標準,您的網站就可以同時在舊版 Windows Internet Explorer 和 Windows Internet Explorer 8 ( 以及未來任何版本 ) 之中正確運作。