最近有好多學生問我網頁的編碼問題,gb2312和utf-8編碼有什麼區別呢?今天總結下。
最近有好多學生問我網頁的編碼問題,gb2312和utf-8編碼有什麼區別呢?今天總結下:
不知道大家在做頁面的時候會不會遇到樣式定義不生效的問題,基本的表現就是怎麼改樣式都沒顯示或只有某些浏覽器正常,這時通常需要做下面的幾步:
確認所修改的樣式文件是否是當前頁面的樣式文件(多個環境的情況)
確認文件中的路徑是否正確(可能手誤多寫或少寫)
如果上面兩點都確認沒問題或只是一部分樣式失效,基本可以確定是文件的編碼問題
大家都知道使用“UTF-8”比“GB2312”跨平台的兼容性更好,卻不一定知道文件的編碼跟文件編碼的申明不是一回事,以為只要申明了文件的編碼類型就是改了文件的編碼,導致很多時候只是簡單的申明了文件的編碼類型,而並沒有真的修改文件編碼類型,當浏覽器以申明的編碼類型去解析文件時,由於文件的實際編碼跟申明不同,出現解析不正確的問題。
以上問題如何產生呢?
只修改了申明,沒有保存與申明對應的文件編碼類型
在不同文件間拷貝時,兩個文件間的編碼不一樣
上面的問題只要再另存一份,選擇跟申明一樣的編碼類型即可解決。
如果上面的方法都沒有作用的話,可能就是編輯軟件的問題啦,建議換個編輯器試試。
目前我知道的會有問題的編輯器:
EmEditor Professional v7.50 Alpha 5(可能還是Alpha版本的關系,在UTF-8不加簽名時,如果樣式注釋結尾出現特定的中文,如“不、用、接、名、近、見、鬼、評、論、的、出、寫、下、現、面、日”等,會導致之後的內容無法被IE7解析)
Editplus(不知道是哪個版本了,有人知道請告訴我,保存UTF-8加簽名時,簽名會導致內容無法被解析)
注:以上說的都是指樣式部分,包括頁面中的樣式和獨立的樣式文件。