今天在學(xué)習(xí)HTML5的過程中遇到了中文亂碼問題:
<body> <form > 請輸入內(nèi)容: <input pattern="[A-Z]{3}" name="part"> <input type="submit"> </form> </body>
我是用myeclipse 2016開發(fā)的,但我的項目和html文件的編碼格式都是utf-8,還是亂碼,去網(wǎng)上搜了搜都沒有搜到,后來發(fā)現(xiàn)了一件有趣的事,知道了問題的原因。
每次創(chuàng)建一個新的HTML5文件時,新建的文件都自帶了如下代碼:
<meta name="keywords" content="keyword1,keyword2,keyword3"> <meta name="description" content="this is my page"> <meta name="content-type" content="text/html; charset=UTF-8">
但當(dāng)我嘗試著把
<meta name="content-type" content="text/html; charset=UTF-8">
改成如下這樣
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
亂碼問題就解決了。
然后我去google了一下http-equiv和name的區(qū)別:
他們是這么說的:“name屬性主要用于描述網(wǎng)頁”,而http-equiv“相當(dāng)于http文件頭作用,它可以向瀏覽器傳回一些有用的信息,以幫助正確和精準(zhǔn)地顯示網(wǎng)頁內(nèi)容。”
看到這里我想大體可以說清了,只是在以后的開發(fā)中可能需要每次改動一下(我試過將這些meta屬性全部刪掉,當(dāng)項目跑起來時,還是中文亂碼……)。