伺服器和瀏覽器會透過 網際網路如果伺服器未指定要使用的字元編碼格式 ,瀏覽器無法得知每個位元組所代表的字元。 字元編碼宣告 就能解決這個問題
Lighthouse charset
稽核失敗的原因
Lighthouse 標記未指定字元編碼的網頁:
![失敗字元編碼稽核。](https://developer.chrome.com/static/docs/lighthouse/best-practices/charset/image/the-failing-character-enc-65708532bd6a6.png?authuser=19&hl=zh-tw)
如果 Lighthouse 找到以下任一項,系統會考慮要宣告的字元編碼:
- 文件
<head>
中的<meta charset>
元素,這個元素完全是 包含在文件前 1024 個位元組中 Content-Type
HTTP 回應標頭,但charset
指令與 有效的 IANA 名稱- 位元組順序標記 (BOM)
如何通過 charset
稽核
在 HTML 中新增 <meta charset>
元素
在 HTML 文件的前 1024 個位元組中加入 <meta charset>
元素。
元素必須完全包含在前 1024 個位元組內。
最佳做法是將 <meta charset>
元素設為
第 <head>
份文件。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
…
新增 Content-Type
HTTP 回應標頭
設定伺服器以新增 Content-Type
包含 charset
指令的 HTTP 回應標頭。
Content-Type: text/html; charset=UTF-8