這篇文章主要介紹了html 指定頁面字符集的兩種方法,幫助大家更好的制作網(wǎng)頁,感興趣的朋友可以了解下
1.html指定頁面字符集的兩種方式
方式一:
<meta charset="utf-8">
方式二:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
以上就是將頁面的字符集設(shè)置成UTF-8的兩種方式(設(shè)置頁面字符集),目的在于:告訴瀏覽器該html文件的字符集。
2.設(shè)置頁面使用字符集的兩種方式
第一種:服務(wù)器指定響應(yīng)內(nèi)容的字符集;
response.setCharacterEncoding("utf-8")
前提:服務(wù)器通過服務(wù)器轉(zhuǎn)發(fā)或者重定向到指定的界面。
第二種:頁面指定字符集。
見1
說明:第一種方式的優(yōu)先級高于第二種。
3.服務(wù)器轉(zhuǎn)發(fā)
這是怎么回事,為什么不生效?
原因分析
通過服務(wù)器完成頁面的跳轉(zhuǎn)請求(轉(zhuǎn)發(fā))
f12捕獲網(wǎng)絡(luò),獲取到的相應(yīng)的頁面的字符集為iso-8859-1,所以瀏覽器解析該頁面時就會出現(xiàn)亂碼。
解決方案
如果是轉(zhuǎn)發(fā),則需指定返回數(shù)據(jù)的字符集為utf-8即可。
1response.setCharacterEncoding("utf-8");
服務(wù)器重定向
重定向,且沒有指定返回數(shù)據(jù)的編碼集,頁面會怎么樣?
字符集由頁面說了算,即:頁面的字符集有頁面中關(guān)于字符集的聲明決定。
比如:頁面指定字符集為:iso-8859-1
則瀏覽器就按照iso-8859-1也解析。
另外,就算重定向設(shè)置返回數(shù)據(jù)的編碼集,也無效,因為:重定向?qū)?dǎo)致數(shù)據(jù)丟失!
5.總結(jié)
如果頁面由服務(wù)器轉(zhuǎn)發(fā)而來,則頁面的字符集由轉(zhuǎn)發(fā)決定;否則,重定向的界面或者普通界面的字符集由HTML頁面本身的聲明的字符集決定!
注意:今天講的是頁面字符集的問題和純粹的數(shù)據(jù)交互時出現(xiàn)的亂碼不是一碼事!
另外,如果HTTP響應(yīng)頭與meta中都指定了字符集,會造成沖突,http響應(yīng)的字符集生效。
以上就是html 指定頁面字符集的兩種方法的詳細(xì)內(nèi)容,更多關(guān)于html 指定頁面字符集的資料請關(guān)注腳本之家其它相關(guān)文章!
來源:腳本之家
鏈接:https://www.jb51.net/web/749201.html
申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!