通用的編碼方式:
ASCII,全稱美國標(biāo)準(zhǔn)信息交換代碼(American Standard Code for Information Interchange)的縮寫, 針對(duì)英語設(shè)計(jì)。
utf-8(8-bit Unicode Transformation Format)是一種針對(duì)Unicode的可變長度字符編碼,又稱萬國碼??捎糜陲@示中文簡體繁體及其它語言(如英文,日文,韓文)。
GBK,中國制定的一套漢字編碼規(guī)則,用2個(gè)字節(jié)來表示一個(gè)漢字,總共可以覆蓋2萬多個(gè)文字。
ISOLatin-1,由于ASCII字符集不包括德、法語中的特殊拉丁字符,因此歐洲人發(fā)明了ISO 8859-1Latin 1,簡稱為ISOLatin-1。它對(duì)ASCII做了個(gè)擴(kuò)充,涵蓋拉丁字母表中特殊語言字符。
亂碼原因:使用編輯器編寫 HTML 文件,保存編寫的HTML文件,會(huì)按照使用的編輯器默認(rèn)的編碼方式進(jìn)行保存,使用瀏覽器打開HTML文件。在沒有聲明的情況下,瀏覽器并不知道你的這個(gè)文件是使用什么編碼方式,于是會(huì)使用了默認(rèn)解碼方式。例如文件保存為GBK格式,在Chrome打開時(shí)默認(rèn)使用 ISO -8859的解碼方式,就會(huì)導(dǎo)致編碼和解碼不匹配,產(chǎn)生亂碼。
?
?解決方法:在文件保存的時(shí)候,自己要清楚是用哪種編碼方式保存的(sublime默認(rèn)保存方式是utf-8,安裝了GBK Encoding support插件也可另存為gbk)。如果你的文件是保存為utf-8格式,在html 的 <head>里添加<meta charset="utf-8">;如果你的文件保存為gbk格式,一定在文件里添加<meta charset="gbk">,對(duì)瀏覽器進(jìn)行說明,直接按照聲明的編碼方式進(jìn)行解析讀取,就不會(huì)有亂碼問題。