代码改变世界

HTML 中的字符集、ASCII、 ISO-8859-1、符号之间的关系和 HTML URL 编码注意的事项

2014-12-17 09:39  sogouo  阅读(1501)  评论(0编辑  收藏  举报

 

一、HTML 实体

1.什么是HTML 实体?

在 HTMl 中,某些字符是保留的。小于号 (<) 和 大于号 (>), 浏览器会误认为是标签

如果希望正确地显示预留字符,必须在 HTML 源代码中使用字符实体(HTML entities).

2.字符实体类

      &entity_name 或者 &#entity_number;

提示:
使用实体名而不是数字的好处是,名字易于记忆。
不过坏处,浏览器也许并不支持所有实体名称(对实体数字的支持却很好)


3.不间断空格(non-breaking space)

4.HTML 中的常用字符实体体是不间断空格(&nbsp)

5.HTML 中有用的字符实体

 详细地址:http://www.w3school.com.cn/html/html_entities.asp

 

二、HTMl 字符集

如果正确地显示 HTML 页面,浏览器必须知道使用何种字符集。

1.万维网早起使用的字符集是 ASCII。 ASCII 支持 0-9 的数字,大写和小写英文字母,以及一些特殊字符。

由于很多国际使用的字符并不属于 ASCII,现代浏览器的默认字符集是 ISO-8859-1;

如果网页使用不同于 ISO-8859-1 的字符,就应该在 <meta> 标签进行指定。

2.ISO 字符集
   ISO 字符集是国际标准组织(ISO) 针对不同的字母表/语言定义的标准字符集。

3.Unicode 标准   

Unicode 的出现就是解决,由于上面列出的字符集都有容量限制,而且不兼容多语言环境,Unicode 联盟开发了 Unicode 标准

Unicode 标准涵盖了世界上的所有字符、标点和符号。不论是何种平台、程序或者语言,Unicode 都能够进行文本数据的处理、存储和交换。

Unicode 可以被不同的字符集兼容。最常用的编码方式是 UTF-8 和 UTF=16.

UTF-8 中的字符可以使 1-4 个字节长。 UTF-8 可以表示 Unicode 标准中的任意字符。 UTF-8 向后兼容 ASCII.

UTF-8 是网页和电子邮箱常用的编码。

注意:所有 HTML 4 处理器均已支持 UTF-8,而所有 XHTML 和 XML 处理器支持 UTF-8 和 UTF-16


三、HTML ASCII

HTML 和 XHTML 用标准的 7 比特 ASCII 代码在网络上传输数据。
7 比特 ASCII 代码可以提供 128 个不同的字符值。

四、HTML ISO-88591

HTML 4.01 支持 ISO 8859-1 字符集

ISO 8859-1 的较低部分(从 1 到 127 之间的代码)是最初的 7 比特 ASCII;

ISO 8859-1 的较高部分(从 160 到 255 之间的代码)全部有实体名称。

这些符号中的大多数可以在不进行实体引用的情况下使用,但是实体名称或者实体比编号为那些不容易通过键盘输入的符号提供了表达的方法。

五、HTML 4.01 符号实体

   包括了数学符号、希腊字符、各种箭头符号、科技符号以及形状

六、HTMl URL 编码

url 编码形式表示的是 ASCII 字符(十六进制格式)
十六进制格式用于在浏览器和插件中显示非标准的字母和字符

URL 编码会将字符转换为可通过因特网传输的格式。

URL 统一资源定位器
WEb 浏览器通过 URL 从 web 服务器请求页面

URL 编码
URL 只能使用 ASCII 字符集 来通过因特网进行发送。

由于 URL 常常会包含 ASCII 集合之外的字符, URL 必须转换为有效的 ASCII 格式.

URL 编码使用 %其后跟随两位的 十六进制来代替非 ASCII 字符。

URL 不能包含空格,URL 编码通常使用 "+" 来替换空格。

 

参考资料:

http://www.oschina.net/translate/what-every-web-developer-must-know-about-url-encoding#Thereservedcharactersarenotwhatyouthinktheyare
http://www.w3schools.com/html/html_entities.asp
http://www.w3school.com.cn/tags/html_ref_language_codes.asp
http://www.w3school.com.cn/html/html_entities.asp
http://en.wikipedia.org/wiki/Percent-encoding
http://blog.csdn.net/wusuopubupt/article/details/8817826
http://blog.163.com/chenzhenhua_007/blog/static/12849264920108119449881/
http://www.qianxingzhem.com/post-1989.html
http://unicode-table.com/en/#cherokee

 

总结:对 HTMl 基础背景、标准有了初步的了解,还需要在深入的学习。