如何通过CSS开启硬件加速来提高网站性能
你知道我们可以在浏览器中用css开启硬件加速,使GPU (Graphics Processing Unit) 发挥功能,从而提升性能吗?
现在大多数电脑的显卡都支持硬件加速。鉴于此,我们可以发挥GPU的力量,从而使我们的网站或应用表现的更为流畅。
在桌面端和移动端用CSS开启硬件加速
CSS animations, transforms 以及 transitions 不会自动开启GPU加速,而是由浏览器的缓慢的软件渲染引擎来执行。那我们怎样才可以切换到GPU模式呢,很多浏览器提供了某些触发的CSS规则。
现在,像Chrome, FireFox, Safari, IE9 和最新版本的Opera都支持硬件加速,当它们检测到页面中某个DOM元素应用了某些CSS规则时就会开启,最显著的特征的元素的3D变换。
例如:
|
可是在一些情况下,我们并不需要对元素应用3D变换的效果,那怎么办呢?这时候我们可以使用个小技巧“欺骗”浏览器来开启硬件加速。
虽然我们可能不想对元素应用3D变换,可我们一样可以开启3D引擎。例如我们可以用transform: translateZ(0); 来开启硬件加速 。
|
在 Chrome and Safari中,当我们使用CSS transforms 或者 animations时可能会有页面闪烁的效果,下面的代码可以修复此情况:
|
在webkit内核的浏览器中,另一个行之有效的方法是
|
原生的移动端应用(Native mobile applications)总是可以很好的运用GPU,这是为什么它比网页应用(Web apps)表现更好的原因。硬件加速在移动端尤其有用,因为它可以有效的减少资源的利用(麦时注:移动端本身资源有限)。
总结
只对我们需要实现动画效果的元素应用以上方法,如果仅仅为了开启硬件加速而随便乱用,那是不明智的。
小心使用这些方法,如果通过你的测试,结果确是提高了性能,你才可以使用这些方法。使用GPU可能会导致严重的性能问题,因为它增加了内存的使用,而且它会减少移动端设备的电池寿命。
你有在项目中使用过这些方法吗?如果有,请分享你的精彩案例吧。
如何通过CSS开启硬件加速来提高网站性能相关推荐
- html5不支持硬件加速,CSS开启硬件加速来提高网站性能-HTML5综合
CSS开启硬件加速来提高网站性能-HTML5综合 本文由 文梅画史 于 2016-1-28 5:09 发布在 HTML5综合 在桌面端和移动端用CSS开启硬件加速 CSS animations, tr ...
- css硬件加速,用CSS开启硬件加速提高网站性能
你知道我们可以在浏览器中用css开启硬件加速,使GPU (Graphics Processing Unit) 发挥功能,从而让渲染的性能更好吗? 现在大多数电脑的显卡都支持硬件加速,因此,我们可以利用 ...
- CSS开启硬件加速 hardware accelerated
作者:孙志勇 微博 日期:2016年12月6日 一.时效性 所有信息都具有时效性.文章的价值,往往跟时间有很大关联.特别是技术类文章,请注意本文创建时间,如果本文过于久远,请读者酌情考量,莫要浪费时间 ...
- css 开启硬件加速的属性
让浏览器知道你需要硬件加速,满足其一即可perspectivebackface-visibilitytransform:translateZ(x)opacityfiltersWill-change优点 ...
- CSS3开启硬件加速及利弊
最近了解了一下用css3开启硬件加速的这个功能,不得不感叹浏览器这些东西太神奇了,要不是师兄提起,我根本就不知道居然有这种东西.所以还是要提高一下自己的信息来源渠道的. 巴拉巴拉了一下,下面我们正式来 ...
- CSS动画开启硬件加速
(一)前言 在需要高频交互的css动画时候,我们就需要考虑使用CSS3 硬件加速. 首先,CSS3 硬件加速又叫做 GPU 加速,是利用 GPU 进行渲染, 减少 CPU 操作的一种优化方案.由于 G ...
- 关于修改虚拟机内存,和开启 硬件加速
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 昨晚回复 ...
- 腾讯视频开启硬件加速
这篇文章主要说的是如何下载腾讯视频到电脑_腾讯视频开启硬件加速,希望可以帮助大家.腾讯视频开启硬件加速返回暂停重播播放x 当我们使用腾讯视频观看本地或在线影视时,开启硬件加速可以明显提高画面质量以及减 ...
- html代码硬件加速优化,详解CSS3开启硬件加速的使用和坑
前言 最近在看在github上看iscroll的文档.虽然是英文的,但是为了装逼,没办法硬着头皮看完了,觉得作者写得不错(我有那么好耐心写那么长的文档就好了[捂脸]),然后为了更好地装逼,有看了一遍, ...
最新文章
- shiro整合oauth
- knn闽南语是什么意思_小丑竟是我自己是什么意思梗 小丑竟是我自己bgm是什么...
- Django 2.1.3 中间件使用
- python工程师待遇-Python工程师待遇如何 玩转Python看这里
- Java集合:数组的使用
- java代码里的JSON格式怎么写好看_谁会不爱让代码骚里骚气的VSCode扩展插件呢?...
- respberry pi3 上手随记
- 前端学习(774):查文档
- _declspec(naked) 使用
- PyTorch1.2.0版本来啦!居然还有全套视频!让你快速熟练掌握深度学习框架!
- 分布式团队中沟通引发的问题, itest 解决之道
- IntelliJ IDEA开发工具插件GsonFormat插件安装使用
- Mac环境下AndroidStudio关于 Failed to resolve: org.jetbrains.kotlin:kotlin-stdlib-jre7的错误
- Python版的BS期权定价模型和希腊值分析
- 虚拟机无法通过dhcp获取到IP地址
- micropython stm32f107_stm32f107 USART3数据接收错误问题
- 计算机版音乐教学反思,音乐教学反思(通用3篇)
- 上海迪士尼乐园推出全新夜间演出“奇梦之光幻影秀”
- 一个漂亮的证明与作图:高斯的正十七边形
- 微信服务号开发----创建个性化菜单
热门文章
- mac php 超时,PHP---Mac上开启php错误提示
- hive选择mariadb还是mysql_Hive MariaDb的安装
- python知识点智能问答_基于知识图谱的智能问答机器人
- 20155330 2016-2017-2 《Java程序设计》第五周学习总结
- js创建节点,小试牛刀
- 在Eclipse中配置Tomcat7.0
- Javascript – 正则表达式
- 整数返回poj1005——I Think I Need a Houseboat
- PMP-PMBOK-培训(3)Introduction to Project Process Groups and Initiating a Project
- python个人收支管理系统相关题目_练手题:计算人均付费(SQLPython)