升級 Win10 後,Edge/Chrome 瀏覽器顯示英文字符亂碼(方框/亂碼/缺失)。多數因 **網頁 CSS 指定的字體在系統中缺失/損壞/映射錯誤**,導致回退機制失效。用開發者工具精準定位並修復。
font-family → 查看**最終解析生效的字體族列表**(第一個可用字體即為實際渲染字體)。| 故障字體 | 典型現象 | 修復方案 |
|---|---|---|
| Microsoft YaHei UI / 微軟雅黑 | 系統字體文件損壞/被刪 | 控制面板 → 字體 → 檢查是否存在;缺失則從同版本系統複製 msyh.ttc 到 C:\Windows\Fonts 或重裝字體包 |
| Segoe UI | 系統 UI 字體缺失 | sfc /scannow 修復系統文件;或從 Win10 ISO \sources\install.wim 提取 |
| Helvetica / Arial / Roboto / Open Sans | Web 字體加載失敗/被攔截 | 檢查網絡/防火牆/代理;清除瀏覽器緩存;本地安裝對應字體文件 |
| 自定義 @font-face 字體 | 跨域/CORS/MIME 類型/字體格式不支持 | F12 Network 面板看字體請求狀態 (200/403/500/CORS error) → 修復服務器配置 |
del /q "%WinDir%\System32\FNTCACHE.DAT"
del /q "%LocalAppData%\FontCache\*"
# 重啟或重啟 Windows Font Cache Service 服務
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts 檢查字體文件名與實際文件是否對應,修正錯誤條目。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes 添加映射(如 "Helvetica"="Arial"),強制回退到系統存在字體。重新加載頁面,亂碼區域應正常顯示英文字符。若仍異常,切換瀏覽器/無痕模式排除擴展干擾,或嘗試 edge://flags/#enable-font-cache-scaling 相關實驗性標誌。
**核心邏輯**:亂碼 = 瀏覽器請求字體 → 系統無此字體/文件損壞/映射錯 → 回退失敗 → 顯示 .notdef 字形 (方框/亂碼)。**補齊字體或修正映射即治本**。