浅谈web前端性能优化
前端性能优化:
一、尽可能减少前端http请求。
1、合并优化脚本文件和css文件。
2、同种类型的背景图片尽量放在一起,用css控制显示。
二、使用浏览器缓存。
如果能强制浏览器缓存在本地,将会降低页面产生的流量。
三、页面压缩。
压缩gzip,html,js,css,图片等。
四、html代码结构优化*
1、正确布置页面脚本。
1>、尽可能使用外部脚本和配置文件。
2>、js文件放到文档末尾。
3>、脚本放在文档前面,文档内容可能会被阻塞。放在末尾会出现就是未加载完用户就会触发行为。
2、减少dom结构的层级。
3、减少cookie的大小。
4、尽量用div取代table。
table会影响页面展示速度,应为只有table完全加载才会展示在页面上。
五、组件分为多个域,提高页面组件并行下载能力。
六、图片,脚本,数据预加载。
移动端的性能优化:
属于前端性能优化范畴,但移动性能优化在PC端同样适用。
1、使用css动画。应为css加载速度优于js。
2、适当使用touch事件代替click事件。
3、合理使用css3样式,减少使用css3渐变阴影等效果。
4、用transform开启硬件加速。
5、不滥用float,web字体。
------------------华丽的分割线------------------------------
最近看了些性能优化的知识,补充在上面
前端性能测试里的二八原则,即前端优化占八成,后端优化占两成。
客户端响应时间:
10%-20%:发送http请求,从服务端获取html文档。
90%-80%:下载页面相关文件。
浅谈web前端性能优化的更多相关文章
- Web前端性能优化进阶——完结篇
前言 在之前的文章 如何优化网站性能,提高页面加载速度 中,我们简单介绍了网站性能优化的重要性以及几种网站性能优化的方法(没有看过的可以狂戳 链接 移步过去看一下),那么今天我们深入讨论如何进一步优化 ...
- [原创]浅谈H5页面性能优化方法
[原创]浅谈H5页面性能优化方法 前阶段公司H5页面性能测试,其中测试时也发现了一些性能瓶颈问题,接下来我们在来谈谈H5页面性能优化,仅仅是一些常用H5页面性能优化措施,其实和Web页面性能优化思路大 ...
- web前端性能优化指南(转)
web前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网络 ...
- Web前端性能优化教程09:图像和Cookie优化
本文是Web前端性能优化系列文章中的第九篇,主要讲述内容:图像和Cookie优化.完整教程可查看: 一. 图像优化 图像基础知识 gif: 适用于动画效果,例如提示的滚动条图案 jpg: 是一种使用 ...
- Web前端性能优化教程06:减少DNS查找、避免重定向
本文是Web前端性能优化系列文章中的第六篇,主要讲述内容:减少DNS查找.避免重定向.完整教程可查看: 一.减少DNS查找 基础知识 DNS(Domain Name System): 负责将域名UR ...
- Web前端性能优化教程08:配置ETag
本文是Web前端性能优化系列文章中的第五篇,主要讲述内容:配置ETag.完整教程可查看:Web前端性能优化 什么是ETag? 实体标签(EntityTag)是唯一标识了一个组件的一个特定版本的字符串, ...
- Web前端性能优化教程05:网站样式和脚本
本文是Web前端性能优化系列文章中的第五篇,主要讲述内容:网站样式和脚本代码的放置位置.使用外部javascript和css.完整教程可查看:Web前端性能优化 一.将样式表放在顶部 可视性回馈的重要 ...
- Web前端性能优化教程03:添加Expires头
本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头.完整教程可查看:Web前端性能优化 什么是Expires头? Expires存储的是一个用来控制缓存失效的日期.当浏览器 ...
- Web前端性能优化教程04:压缩组件
本文是Web前端性能优化系列文章中的第四篇,主要讲述内容:压缩组件.完整教程可查看:Web前端性能优化 基础知识 gzip编码:gzip是GUNzip的缩写,是使用无损压缩算法的一种,最早是用于Uni ...
随机推荐
- Robotium结果的收集和失败重跑
引用自 http://www.robotium.cn/archives/author/zered 测试用例: testsuite管理测试用例 测试结果的输出与收集? InstrumentationTe ...
- Mac 上VitrualBox安装CentOS6.5 调整root分区的大小
安装centOS的时候由于选择了动态调整磁盘大小.所以分配磁盘空间的时候就没多想,直接用的default的8G,以为不够了自己会调整,没想到是个大坑 发现提示空间不足的时候root仅仅有0k了.... ...
- BZOJ 2244: [SDOI2011]拦截导弹 DP+CDQ分治
2244: [SDOI2011]拦截导弹 Description 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度.并且能够拦截 ...
- 最长公共上升子序列 (poj 2127) (Greatest Common Increasing Subsequence)
\(Greatest Common Increasing Subsequence\) 大致题意:给出两个长度不一定相等的数列,求其中最长的公共的且单调递增的子序列(需要具体方案) \(solution ...
- CocoaPods初体验
之前没用过cocoapods,但是新项目需要用到. 安装cocoapods: 按照官方的: $ sudo gem install cocoapods // 但是什么都没有发生 升级gem $ s ...
- kafka2
Master-Slave: 读写分离,save复制master的数据.同步复制:保证了强一致性但是会影响高可用性,因为写入的时候要保证slave都写入了才能返回告诉生产者数据写入成功,如果slave过 ...
- spring boot---WebFilter注解 实现自定义登录过滤器
https://my.oschina.net/wangnian/blog/647976 http://www.jianshu.com/p/05c8be17c80a
- UVA10480 Sabotage —— 最小割最大流
题目链接:https://vjudge.net/problem/UVA-10480 题解: 实际就是求最小割集. 1.什么是网络流图的“割”?答:一个边的集合,使得网络流图删除这些边之后,点被分成两部 ...
- 关于JQuery获取元素索引值的理解
举例: <html> <body> <div id="text"> <div> <a><span>标题一&l ...
- SPOJ:Decreasing Number of Visible Box(不错的,背包?贪心?)
Shadowman loves to collect box but his roommates woogieman and itman don't like box and so shadowman ...