服務(wù)熱線
153 8323 9821
前幾天做頁面,排好的html頁面復(fù)制到aspx頁面上就是會出現(xiàn)差異,比如字體定義無效,基本的表現(xiàn)就是怎么改樣式都沒顯示或只有某些瀏覽器正常,搞了半天才發(fā)現(xiàn)是編碼問題,DW默認(rèn)新建的文件編碼是gb2312的,vs默認(rèn)是utf-8的,時間原因也沒重新排,就在web.config的 Configuration節(jié)點下對這個頁面單獨設(shè)置了編碼。
出現(xiàn)修改樣式無效時通常需要做下面的幾步:
大家都知道使用“UTF-8”比“GB2312”跨平臺的兼容性更好,卻不一定知道文件的編碼跟文件編碼的申明不是一回事,以為只要申明了文件的編碼類型就是改了文件的編碼,導(dǎo)致很多時候只是簡單的申明了文件的編碼類型,而并沒有真的修改文件編碼類型,當(dāng)瀏覽器以申明的編碼類型去解析文件時,由于文件的實際編碼跟申明不同,出現(xiàn)解析不正確的問題。
以上問題如何產(chǎn)生呢?
只修改了申明,沒有保存與申明對應(yīng)的文件編碼類型
在不同文件間拷貝時,兩個文件間的編碼不一樣
上面的問題只要再另存一份,選擇跟申明一樣的編碼類型即可解決。
如果上面的方法都沒有作用的話,可能就是編輯軟件的問題啦,建議換個編輯器試試。
UTF-8:Unicode TransformationFormat-8bit,允許含BOM,但通常不含BOM。是用以解決國際上字符的一種多字節(jié)編碼,它對英文使用8位(即一個字節(jié)),中文使用24為(三個字節(jié))來編碼。UTF-8包含全世界所有國家需要用到的字符,是國際編碼,通用性強。UTF-8編碼的文字可以在各國支持 UTF8字符集的瀏覽器上顯示。如,如果是UTF8編碼,則在外國人的英文IE上也能顯示中文,他們無需下載IE的中文語言支持包。
GBK是國家標(biāo)準(zhǔn)GB2312基礎(chǔ)上擴容后兼容GB2312的標(biāo)準(zhǔn)。GBK的文字編碼是用雙字節(jié)來表示的,即不論中、英文字符均使用雙字節(jié)來表示,為了區(qū)分中文,將其最高位都設(shè)定成1。GBK包含全部中文字符,是國家編碼,通用性比UTF8差,不過UTF8占用的數(shù)據(jù)庫比GBD大。
GBK、GB2312等與UTF8之間都必須通過Unicode編碼才能相互轉(zhuǎn)換:
對于一個網(wǎng)站、論壇來說,如果英文字符較多,則建議使用UTF-8節(jié)省空間。不過現(xiàn)在很多論壇的插件一般只支持GBK。