2011年9月23日

IE8相容性模式問題

近期一個專案是以Visual Studio 2010開發ASP.NET網站,在套用版面及CSS樣式過程中,皆直接使用Visual Studio的[在瀏覽器檢視功能],以IE8檢視版面並進行修正,經過一番折騰,內容顯示終於跟設計稿相去不遠,但將網站佈署至IIS後,再以IE8檢視時,XD,怎麼有種七月半的感覺(版面破相了XD),請教Google神,獲得的解答是IE8相容性模式問題。
若HTML網頁沒有定義DOCTYPE要以何種模式作呈現,將會採用Quirks模式。
Visual Studio的[在瀏覽器檢視功能]似乎是以IE8標準模式作呈現,故將網頁定義為IE8標準模式,即可解決該問題。
  • 作法可參考以下網址的說明:
    • http://tsuozoe.pixnet.net/blog/post/24804436-internet-explorer-8
    • http://msdn.microsoft.com/zh-tw/library/cc817570.aspx
  • 也可透過程式碼,進行網頁定義:
  • protected override void OnPreInit(EventArgs e)
    {
        Response.AddHeader("X-UA-Compatible", "IE=8");
        base.OnPreInit(e);
    }
    

沒有留言:

張貼留言