zen-cart网站,模版,采集,二次开发

首页 ? Linux ? PHP ? 阅读文章

HTML, XHTML, XML, CSS, JS编码charset指定方式

2011-05-13 22:12 21776 0 发表评论
标签:


Web开发中,文档常常指:(X)HTML文档、XML文档、CSS文档、js文档。指定文档编码的方式有以下几种:

HTTP Header中指定文档编码

在一个典型的HTTP响应头里,Content-Type的值中可以指定文档编码,如:

HTTP/1.1 200 OK
Date        Tue, 11 May 2010 04:09:22 GMT
Server      Apache
Content-Type    text/html; charset=gb2312

对于动态网页,用这种方式指定文档编码,在脚本中直接输出响应头即可:

header( 'Content-type: text/html; charset=gb2312' );

对于静态网页、CSS文件等,则需要在Apache等服务器中配置,例如:

AddType 'text/html; charset=gb2312' html

Content-Type meta元素中指定HTML文档编码

对于HTML文档(或当成HTML解析的XHTML文档),用这种方式指定文档编码,应在标签 里的最上方,加入:


HTML5的charset meta元素

我们潮一些,DOCTYPE为HTML5的文档,可以用带有meta标签的charset属性指定文档编码,类似于这 样:


用链接的charset属性指定编码

, ,

使用@charset指定CSS文档编码

如果CSS文档中存在非ASCII字符,为了不让浏览器费力去猜测编码,可以指定CSS文档的编码。一种方式是使用 @charset指定,在CSS文件的第一行:

@charset "utf-8";

编码指定方式的优先级

上述方式指定文档编码,会使用下面的优先级:

  1. HTTP响应头的Content-Type
  2. XML的首行声明
  3. meta标签charset声明
  4. 链接的charset属性

例如对于一个CSS文件,它的编码优先级会按照下面的顺序指定:

  1. HTTP Content-Type
  2. @charset rule

总结

本文总结了Web文档(包括HTML, XHTML, XML, CSS, JS)的编码指定方式。比较常见的是(X)HTML文档中用meta标签指定编码,但优先级不如HTTP响应头高。外部js/css文件指定编码的方法也不尽相同,js文件用引用它的script tag charset attribute指定,css文件用文件开头的@charset指定。

转载:http://jsfox.cn/blog/learning/web-document-charset.html

相关日志:

评论 共0条 (RSS 2.0) 发表评论

  1. 暂无评论,快抢沙发吧。

发表评论

  • ?
  • 插入代码

联系我 Contact Me

回到页首