簡體   English   中英

Html編碼在本地默認為“Western(ISO-8859-1)”

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM