非下表中的所有实体都能在所有的浏览器中正确地显示。
目前,IE 11 是唯一一个能正确显示所有 HTML5 实体的浏览器。
字符 | 实体名称 | 十六进制 |
---|---|---|
ˇ | Hacek | 002C7 |
hairsp | 0200A | |
? | half | 000BD |
? | hamilt | 0210B |
Ъ | HARDcy | 0042A |
ъ | hardcy | 0044A |
? | hArr | 021D4 |
? | harr | 02194 |
? | harrcir | 02948 |
? | harrw | 021AD |
^ | Hat | 0005E |
? | hbar | 0210F |
? | Hcirc | 00124 |
? | hcirc | 00125 |
? | hearts | 02665 |
? | heartsuit | 02665 |
… | hellip | 02026 |
? | hercon | 022B9 |
? | Hfr | 0210C |
hfr | 1D525 | |
? | HilbertSpace | 0210B |
? | hksearow | 02925 |
? | hkswarow | 02926 |
? | hoarr | 021FF |
? | homtht | 0223B |
? | hookleftarrow | 021A9 |
? | hookrightarrow | 021AA |
? | Hopf | 0210D |
hopf | 1D559 | |
― | horbar | 02015 |
─ | HorizontalLine | 02500 |
? | Hscr | 0210B |
hscr | 1D4BD | |
? | hslash | 0210F |
? | Hstrok | 00126 |
? | hstrok | 00127 |
? | HumpDownHump | 0224E |
? | HumpEqual | 0224F |
? | hybull | 02043 |
‐ | hyphen | 02010 |
如您还有不明白的可以在下面与我留言或是与我探讨QQ群308855039,我们一起飞!
小伙伴们,感觉我的分享很不错的别忘记“赞赏”我一下哟!
思维新建站官网:jz.inspinovation.com
文|李掌柜
前面给大家介绍了《HTML5移动前端性能优化之加载优化》,今天来向大家介绍如何从网页渲染的层面来优化HTML5前端性能。
一、HTML5使用viewport
通俗的讲,移动设备上的viewport就是设备的屏幕上能用来显示我们的网页的那一块区域,在具体一点,就是浏览器上(也可能是一个app中的webview)用来显示网页的那部分区域,但viewport又不局限于浏览器可视区域的大小,它可能比浏览器的可视区域要大,也可能比浏览器的可视区域要小。在默认情况下,一般来讲,移动设备上的viewport都是要大于浏览器可视区域的,这是因为考虑到移动设备的分辨率相对于桌面电脑来说都比较小,所以为了能在移动设备上正常显示那些传统的为桌面浏览器设计的网站,移动设备上的浏览器都会把自己默认的viewport设为980px或1024px(也可能是其它值,这个是由设备自己决定的),但带来的后果就是浏览器会出现横向滚动条,因为浏览器可视区域的宽度是比这个默认的viewport的宽度要小的。下图列出了一些设备上浏览器的默认viewport的宽度。
二、减少DOM节点
当解析的html文件很大时,生成DOM树占用内存较大,同时遍历(不更新)元素耗时也更长。但这都不是重点,DOM的核心问题是:DOM修改导致的页面重绘、重新排版!重新排版是用户阻塞的操作,同时,如果频繁重排,CPU使用率也会猛涨!
三、尽量使用CSS3动画
CSS虽然是由浏览器实现,按理在浏览器支持的前提下性能会更好,然而使用者如果加入了其他干扰,发生频繁的重绘或者回流,自然性能就差了。
四、Touchmove 和Scroll事件会导致多次渲染
类似touchmove,scroll这类的事件可导致多次渲染,对于这种事件可以通过以下手段进行优化:
1.使用requestAnimationFrame监听帧变化,使得在正确的时间进行渲染
2.增加响应变化的时间间隔,减少重绘次数。
五、GPU加速
触发GPU加速的方式有:CSS3 transitions、CSS3 3D transforms、WebGL 3D 绘制、Video。
GPU加速实际上是大幅减少了合成/绘制时间,从而大大地提高了页面速度,但GPU加速有自己的缺点:
过多的GPU层会带来性能开销,主要原因是使用GPU加速其实是利用了GPU层的缓存,让渲染资源可以重复使用,所以一旦层多了,缓存增大,就会引起别的性能问题。
日YouTube正式宣布,用户通过Chrome、IE11、Safari 8 还有beta版的Firebox等众多浏览器播放YouTube的视频将默认使用HTML5,取代原先的Flash。
苹果创始人乔布斯于2010年曾在苹果官方网站上发表的文章《Thought on Flash》,距离今天已经过去将近5年的时间,该书详细阐述了苹果不支持Flash而力挺HTML 5的原因。乔布斯认为Flash存在技术缺陷还不兼容触摸设备,因此并不适配苹果公司的iOS设备。
YouTube的工程师Richard Leider称之为“向前迈出了重要的一步”,在官方博客中他详细介绍了团队这4年为HTML5付出的努力。
Leider表示在本次变化中还使用了谷歌的VP9编码技术,尽管视频依然使用H.264,此外还带来了全新的在线视频WebRTC技术和HTML5的新全屏API。
Adobe同样面临着Flash带来的诸多问题,最近,该公司发表声明承认Flash player存在致命性缺点,黑客可以轻而易举的引导用户进入一个危险网站。
不仅是YouTube一家公司,整个行业都会因此会受到推动。
*请认真填写需求信息,我们会在24小时内与您取得联系。