今天给大家分享一篇文章,关于静态 页面加载和解析的相关显示流程的。
浏览器加载和渲染 的顺序
下载的顺序是从上到下,渲染(就是把请求的内容显示到浏览器屏幕上)的顺序也是
从上到下,下载和渲染是同时进行的。
在渲染到页面的某一部分时,其上面的所有部分都已经下载完成(并不是说所有相关联
的元素都已经下载完)。
如果遇到语义解释性的标签嵌入文件( 脚本, 样式),那么此时 的下载过程
会启用单独连接进行下载。
样式表在下载完成后,将和以前下载的所有样式表一起进行解析,解析完成后,将对此
前所有元素(含以前已经渲染的)重新进行渲染。
、 中如有重定义,后定义函数将覆盖前定义函数。
的加载
不能并行下载和解析(阻塞下载)。
当引用了 的时候,浏览器发送 个 就会一直等待该 的返回。因
为浏览器需要 个稳定的 树结构,而 中很有可能有
代码直接改变了 树结构,比如使用 !"或 #$$ "%甚至是直接
使用的 #" & 进行跳转,浏览器为了防止出现 修
改 树,需要重新构建 树的情况,所以 就会阻塞其他的下载和呈现
如何加快 页面加载速度
页面减肥:
#页面的肥瘦是影响加载速度最重要的因素。
'删除不必要的空格、注释。
将 " " 的 "$ 和 移到外部文件。
可以使用 "( 来给 减肥,还可以使用一些压缩工具来给 #)#"$ 减肥。
减少文件数量:
#减少页面上引用的文件数量可以减少 * 连接数。
'许多 #)#"$、 文件可以合并最好合并,零点 论坛都把自己的 #)#"$
& " 和 *($ 合并到一个 '# 文件里去了。
减少域名查询:
#+ 查询和解析域名也是消耗时间的,所以要减少对外部 #)#"$、、图片等
资源的引用,不同域名的使用越少越好。
缓存重用数据:
#对重复使用的数据进行缓存。
优化页面元素加载顺序:
#首先加载页面最初显示的内容和与之相关的 #)#"$ 和 ,然后加载 相关
的东西,像什么不是最初显示相关的图片、,#、视频等很肥的资源就最后加载。
-减少 " " #)#"$ 的数量:
#浏览器 $# 会假设 " " #)#"$ 会改变页面结构,所以使用 " " #)#"$
开销较大。
'不要使用 !"./这种输出内容的方法,使用现代 0 方法来为现
代浏览器处理页面内容。
1使用现代 和合法的标签: