Jon*_*ram 21 html5 character-encoding
通过HTTP检索的示例HTML文档缺少:
Content-Type标头<meta charset="<character encoding>" /><meta http-equiv='Content-Type' content='Type=text/html; charset=<character encoding>'>关于HTML5,是默认的,例如UTF-8,假设为字符编码?或者完全取决于阅读HTML文档的应用程序来选择默认值?
Thi*_*ter 20
使用以下规则确定charset:
- 用户覆盖.
- "Content-Type"字段中的HTTP"charset"参数.
- 字节顺序标记HTML文档本身中的任何其他数据之前.
- 具有"charset"属性的META声明.
- 具有"http-equiv"属性设置为"Content-Type"的META声明和为"charset"设置的值.
- 未指定的启发式分析.
...然后...
- 根据Unicode技术标准#22中定义的Charset Alias Matching规则规范化给定的字符编码字符串.
- 覆盖一些有问题的编码,即故意将某些编码视为不同的编码.最常见的覆盖是将US-ASCII和ISO-8859-1视为Windows-1252,但此表中列出了其他几种编码覆盖.正如规范所指出的那样,"根据上表将某些编码视为其他编码的要求是故意违反W3C字符模型规范."
但最重要的是:
您应该始终在每个 HTML文档上指定字符编码,否则会发生错误.您可以通过艰难的方式(HTTP Content-Type标头),简单方式(
<meta http-equiv>声明)或新方式(<meta charset>属性)来完成,但请执行此操作.网络谢谢你.
资料来源: