伺服器和瀏覽器會透過網際網路傳送資料位元組,藉此相互通訊。如果伺服器在傳送 HTML 檔案時未指定要使用的字元編碼格式,瀏覽器就無法知道各個位元組代表的字元。字元編碼宣告規格可以解決這個問題。
Lighthouse charset
稽核失敗
Lighthouse 標記會標記未指定字元編碼的網頁:
Lighthouse 如果發現任何字元編碼,就會視為宣告:
- 文件
<head>
中的<meta charset>
元素,在文件前 1024 個位元組完全包含 Content-Type
HTTP 回應標頭中的charset
指令與有效的 IANA 名稱相符- 位元組順序標記 (BOM)
如何通過 charset
稽核
在 HTML 中加入 <meta charset>
元素
在 HTML 文件的前 1024 個位元組中加入 <meta charset>
元素。元素必須完整納入在前 1,024 個位元組內。最佳做法是在文件 <head>
中將 <meta charset>
元素設為第一個元素。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
…
新增 Content-Type
HTTP 回應標頭
設定伺服器,新增包含 charset
指令的 Content-Type
HTTP 回應標頭。
Content-Type: text/html; charset=UTF-8