問題描述
我有一個 xhtml 頁面驗證在 xhtml 嚴格的 doctype – 但是,我收到這個警告,我試圖理解 – 並且正確。
只是,我如何找到這個錯誤的 「Byte-Order 標記」 。我正在使用 Visual Studio 編輯我的文件 – 不知道是否有幫助。
Warning Byte-Order Mark found in UTF-8 File.
The Unicode Byte-Order Mark (BOM) in UTF-8 encoded files is known to cause problems for some text editors and older browsers. You may want to consider avoiding its use until it is better supported.
最佳解決方法
您的問題的位置部分很容易:byte-order mark(BOM) 將在文件的開頭。
編輯文件時,請轉到 File | Advanced Save Options...
,您應該找到一個”Encoding” drop-down(連同”Line endings” drop-down) 。它可能設置為使用 「Unicode(UTF-8 帶簽名) – Codepage 65001」 。如果您向下滾動一下,您可以找到 「Unicode(UTF-8 無簽名) – Codepage 65001」 。這應該做 (如果你想) 。某些系統可能會被 UTF-8 文件上的 BOM 所混淆,如警告所示。
有關 BOM 和 UTF-8 文件的 Unicode 站點常見問題,請參見 this note 。除了調用該文件以外,它沒有其他功能,實際上是 UTF-8 。特別地,它對字節順序 (我們有 BOM 的主要原因) 沒有影響,因為 UTF-8 的字節順序是固定的。
次佳解決方法
這是我如何解決這個問題:
-
下載並安裝 Notepad++
-
用記事本++打開文件
-
在菜單中選擇”Encoding” 並將其設置為 「無需 BOM 的 UTF-8 編碼」
-
保存文件和 BOM 將會消失。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。