最近遇到有人問,為什麼用IE開啟簡體網頁會是一片空白。卻看不到任何內容。

加上自己最近再用Megaupload,發現也是一樣的狀況。

但是自己用firefoxy或是google瀏覽器卻是OK的。

自己覺得奇怪。

 

後來無意間發現,當我用IE開啟頁面的HTML原始檔就像下面一樣。

 

懂HTML語法的人應該有發現到哪裡有問題吧。

<TITLE> MEGAUPLOAD - 憸??瑪銝??典??辣?€???/TITLE>

就是簡體在搞得鬼。

解決這問題很簡單,你只要在網頁空白處,按下又鍵 -> 編碼 -> 把編碼方式改為Unicode(UTF-8)。

這樣就可以了。

 

或是再IE頁面按下Alt,你會發現上面的工具列跑出來了->檢視-> 編碼 -> 把編碼方式改為Unicode(UTF-8)。

 

後來稍為研究了一下,找出一些舊的書跟網路資料。

做出了結論。

因為這是由於IE解析網頁編碼時以HTML內的標籤優先,而後才是HTTP header內的訊息;而mozilla系列的流覽器則剛剛相反。
加上由於UTF-83個位元組表示一個漢字,而普通的GB2312BIG5
是兩個。
頁面輸出時,由於上述原因,使瀏覽器解析、輸出<title></title>的內容時。
如果在</title>前有奇數個全形字符時輸出的內容時,IEUTF-8當作兩個位元組解析時出現半個漢字的情況。
這時該半個漢字會和/title結合成一個亂碼字,導致IE無法讀完title部分,使整個頁面為空白輸出。

arrow
arrow
    全站熱搜

    阿基 發表在 痞客邦 留言(0) 人氣()