[英]Html encoding defaults to “Western (ISO-8859-1)” locally
假設我在目錄D:\\ Experimental中有以下文件名為index:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head>
<title>Minimal XHTML 1.1 Document</title>
</head>
<body>
<p>This is a minimal <a href="http://www.w3.org/TR/xhtml11">XHTML 1.1</a> document.</p>
</body>
</html>
如果我打開鏈接
file:///D:/experimental/index.html
我看到了html,但似乎字符編碼默認為Western(ISO-8859-1),當我在firefox中單擊視圖 - >字符編碼時,我可以看到這一點。
我想以UTF-8顯示它,因為Western(ISO-8859-1)沒有正確顯示某些字符。 有誰知道如何解決這一問題?
你應該包括:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
在你的HEAD
元素中。
編輯我剛剛在Mac上的Firefox中嘗試過您的示例,即使沒有meta
標記,它也能正確地將文檔解釋為UTF-8。 標准似乎表明它應該使用XML處理指令,但您還應該使用正確的HTTP標頭。 由於您沒有發送標頭(因為您沒有使用HTTP),因此您可以使用meta
標記指定它們。
也許嘗試添加
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
在<head>
部分?
從磁盤加載文件時,您的瀏覽器沒有HTTP Content-Type標頭來讀取編碼,因此它猜測。 要猜測文檔編碼,它使用您的操作系統當前編碼,文件中的實際字節和文件本身內的信息。
正如喬納森所寫,你可以添加一個
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
元素將幫助瀏覽器使用正確的內容類型。 無論如何,請注意,如果您的文檔是從配置錯誤的HTTP服務器發送的,那么瀏覽器通常會忽略該元素,該服務器明確指定Content-Type標頭的另一個編碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.