HTML、CSS、JS对unicode字符的不同处理
unicode字符的不同表示法
unicode字符在html、css和js中的表示方法均不相同,下面分别作介绍。
原文发表于这里
css表示法
首先来一段很常见的bootstrap的字体图标代码:
.glyphicon-home:before {
content: "\e021";
}
上面代码中的e021就是这个字符的unicode码,是16进制。
语法:
'\ + 16进制的unicode编码'
如:'\5b89'表示汉字“安”:
<div class="test"></div>
<style>
.test: before {content: "\e021";}
</style>
js表示方法
语法:
'\u + 16进制的unicode编码'
示例:
// 如:'\u5b89'表示汉字“安”
console.log('\u5b89'); // 输出“安”
html表示方法
html特殊一点,使用的是10进制,一开始没注意这个搞的半天出不来郁闷很久。
语法:
'&# + 10进制的unicode编码 + 英文分号;'
如& #23433;(注意,由于正常书写的话发表之后会被转换成汉字,所以我这里故意中间留了空格防止转换)表示汉字安,结尾的分号经测试不加也没问题,但是最好还是加一下。
<div>
这是unicode表示的字符“安”:& #23433;(这里故意留一空格防止转换)
</div>
另外,一些特殊字符还有其它表示,也就是常说的html转义字符,如(由于自动转换问题,这里用图片表示):

完整的HTML转义字符表可以参见这里:
http://tool.oschina.net/commons?type=2
获取汉字的unicode编码
那么,如何知道一个汉字的unicode的编码呢?很简单:
'安'.charCodeAt(); // 输出的 23433 就是汉字 安 的unicode编码,不过注意是10进制的
String.fromCharCode(23433); // 输出 '安'
得到了10进制的unicode编码,再如果想在js和css里面用的话,就需要用toString(16)转16进制再做进一步处理了。
var unicode = '\\u'+'茗'.charCodeAt().toString(16); // 输出字符串:"\u8317"
JSON.parse('"'+unicode+'"'); // 输出汉字:"茗"
eval('"'+unicode+'"'); // 或者使用eval解析也可以
HTML、CSS、JS对unicode字符的不同处理的更多相关文章
- js中 字符串与Unicode 字符值序列的相互转换
一. 字符串转Unicode 字符值序列 var str = "abcdef"; var codeArr = []; for(var i=0;i<str.length;i++ ...
- Unicode Character Table – Unicode 字符大全
Unicode(统一码.万国码.单一码)是一种在计算机上使用的字符编码.它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言.跨平台进行文本转换.处理的要求.Unicode Chara ...
- HTML/CSS/JS编码规范
最近整理了一份HTML/CSS/JS编码规范,供大家参考.目录:一.HTML编码规范二.CSS编码规范三.JS编码规范 一.HTML编码规范 1. img标签要写alt属性 根据W3C标准,img标签 ...
- HTML+CSS+JS总结
==================HTML(超文本标记语言)========== <!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前.此标签可告 ...
- C# 封装miniblink 使用HTML/CSS/JS来构建.Net 应用程序界面和简易浏览器
MiniBlink的作者是 龙泉寺扫地僧 miniblink是什么? (抄了一下 龙泉寺扫地僧 写的简洁) Miniblink是一个全新的.追求极致小巧的浏览器内核项目,其基于chromium最新 ...
- HTML---引入css,js | 常用标签示例
一.前端基础包括哪些?如何理解 二.css,js引入_及head中其他标签 三.特殊符号 四.常见的标签 4.1,form表单 4.2,input系列(单选框.复选框.input传文件.重置) 4.3 ...
- 使用Unicode字符实现换行
要让inline元素换行可以使用Unicode字符实现: <!DOCTYPE html> <html lang="en"> <head> < ...
- maven-replacer-plugin 静态资源版本号解决方案(css/js等)
本文介绍如何使用 maven 的 com.google.code.maven-replacer-plugin 插件来自动添加版本号,防止浏览器缓存. 目录 1.解决方案 2.原始文件和最终生成效果 3 ...
- js实现unicode码字符串与utf8字节数据互转
js的string变量存储字符串使用的是unicode编码,要保存时必须选择其他编码后进行传输,比如转成utf-8,utf-32等.存储到数据库中为utf-8编码,读取出来如何转换成正确的字符串就成了 ...
随机推荐
- Linux 线程管理
解析1 LINUX环境下多线程编程肯定会遇到需要条件变量的情况,此时必然要使用pthread_cond_wait()函数.但这个函数的执行过程比较难于理解. pthread_cond_wait()的工 ...
- git rebase 和 merge的区别
- jquery 回车事件
简单地记下jquery实现回车事件,代码如下: 全局: $(document).keydown(function(e){ if(e.keyCode==13){ $(".login-li in ...
- Android中轻松显示Gif图片
android中现在没有直接显示gif的view,只能通过mediaplay来显示,且还常常不能正常显示出来,为此写了这个gifview,其用法和imageview一样使用方法:1-把GifView. ...
- JS定义数组,初始化
定义一维数组 方法1: var _TheArray = new Array);/定义 _TheArray[0]="1"; _TheArray[1]="2"; _ ...
- Linux内核笔记——内存管理之slab分配器
内核版本:linux-2.6.11 内存区和内存对象 伙伴系统是linux用于满足对不同大小块内存分配和释放请求的解决方案,它为slab分配器提供页框分配请求的实现. 如果我们需要请求具有连续物理地址 ...
- python列表副本
a=[1,2,3] b=[4,5,6] a=a+b #创建含a和b的副本的新列表 a [1, 2, 3, 4, 5, 6] b [4, 5, 6] c=a+b #创建含a和b的副本的新列表c [1, ...
- 客户端连接注册Ejabberd新用户
今天需要使用客户端注册新用户,结果发现注册失败,在管理后台添加新用户成功.编译安装ejabberd就没有管了,经过翻论坛的到解决方法 在ejabberd.yml中. access: trusted_n ...
- 创建Chrome启动器
今天清理垃圾时不知怎么把chrome启动器删除了,现在要重新创建一个 1.在桌面创建一个chrome.exe的快捷键方式,属性更改目标为: "C:\Program Files (x86)\G ...
- 7_nodejs angularjs
webstrom使用: ctrl+b/点击,代码导航,自动跳转到定义 ctrl+n跳转指定类 ctrl+d复制当前行ctrl+enter另起一行ctrl+y删除当前行 ctrl+alt/shift+b ...