web前端必知篇:提高web性能,学会优化!

在这个快节奏的社会中,你的步调稍稍一慢,你就会被社会无情的淘汰。对于一个好的网站来说,良好的性能也是用户来源的一大关键点。毕竟,谁愿意坐在电脑显示屏前面对着一个空白的网页发呆呢?好吧,咱们进入正题,如何提高Web的性能呢?

1 · 减少HTTP的请求次数

a) 合并CSS、JavaScript

b) 合并小图片,使用雪碧图

2 · CSS放在头部,JS放在结尾

3 · 压缩HTML、CSS、JS资源大小

减少资源大小可以加快网页显示速度,所以要对HTML、CSS、JavaScript等进行代码压缩,并在服务器端设置GZip

4 · 压缩图片

图片是最占流量的资源,因此尽量避免使用他,使用时选择最合适的格式(实现需求的前提下,以大小判断),合适的大小,然后压缩,同时在代码中用Srcset来按需显示

a)使用其它方式代替图片(1. 使用CSS3 2. 使用SVG 3. 使用IconFont)

b)选择合适的图片(1. webP优于JPG 2. PNG8优于GIF)

c)使用Srcset

5 · 避免图片和iFrame等的空Src

空Src会重新加载当前页面

6 · 避免重设图片大小

在页面、CSS、JS等中多次重置图片大小,多次重设图片大小会引发图片的多次重绘,影响性能

7 · 利用缓存

使用缓存可以减少向服务器的请求数,节省加载时间,所以所有静态资源都要在服务器端设置缓存,并且尽量使用长Cache(长Cache资源的更新可使用时间戳)

a)缓存一切可缓存的资源

b)使用外联式引用CSS、JS文件

c)使用长Cache

8 · 预加载

大型重资源页面可使用增加Loading的方法,资源加载完成后再显示页面。但Loading时间过长,会造成用户流失

对用户行为分析,可以在当前页加载下一页资源,提升速度

a) 可感知Loading(如进入空间游戏的Loading)

b) 不可感知的Loading(如提前加载下一页)

9 · 按需加载

将不影响当前屏幕资源放在用户需要的时候在加载(PS:按需加载会导致大量重绘,影响渲染性能)

a) LazyLoad

b) 滚屏加载

10 · 第三方资源使用异步加载

第三方资源不可控会影响页面的加载和显示。

这里还是要推荐下小编的web前端学习 裙 : 6879,

58461,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括

小编自己整理的一份最新的web前端资料和0基础入门教程,欢迎初学和

进阶中的小伙伴。在不忙的时间我会给大家解惑。

[CSS优化]

CSS表达式

CSS表达式的执行需跳出CSS树的渲染,尽量避免;

空的CSS规则

空的CSS规则增加了CSS文件的大小,且影响CSS树的执行,将其删除;

能不在标签中写Style属性就不要写

Font-size

过多的Font-size引发CSS树的效率;

为了浏览器的兼容性和性能,值为0时不要带单位;

Web字体

Web字体需要下载,解析,重绘当前页面,尽量减少使用;

标准化各种浏览器前缀

a)无前缀应放在最后;

b)CSS动画只用 (-webkit- 无前缀)两种即可;

[JavaScript优化]

尽量使用ID选择器(ID选择器是最快的);

尽量使用事件代理,避免批量绑定事件;

减少重绘和回流

a)避免不必要的Dom操作;

b)避免使用document.write;

c)尽量改变Class而不是Style,使用classList代替className;

[渲染优化]

Dom节点

Dom节点太多影响页面的渲染,尽量减少使用

动画优化

a) 尽量使用CSS3动画

b) 合理使用requestAnimationFrame动画代替setTimeout

c) 适当使用Canvas动画 5个元素以内使用css动画,5个以上使用Canvas动画

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,053评论 3 119
  • 今天,学习了新的课程--数组,感觉还可以,没有太多的问题。注意:1,用int定义数组,中括号里面表示数组长度,不定...
    周丶鹏阅读 803评论 1 0
  • 那天 三个朋友突发奇想出去散散心 决定租车自驾去东极 傍晚出发 四百多公里的路程 大概凌晨三点的时候到舟山附近 夜...
    三月六月阅读 1,081评论 0 0

友情链接更多精彩内容