字元集宣告遺失或在 HTML 中太晚出現

伺服器和瀏覽器會透過網際網路傳送資料位元組,藉此相互通訊。如果伺服器在傳送 HTML 檔案時未指定要使用的字元編碼格式,瀏覽器就無法知道各個位元組代表的字元。字元編碼宣告規格可以解決這個問題。

Lighthouse charset 稽核失敗

Lighthouse 標記會標記未指定字元編碼的網頁:

失敗的字元編碼稽核。

Lighthouse 如果發現任何字元編碼,就會視為宣告:

如何通過 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

資源