前端性能-放样式在顶部

渐进式渲染

前端工程师关注网页性能,关于网页渐进式加载;就是说,我们想要浏览器尽可能地显示内容。这个非常重要,尤其是在慢速网络条件下用户访问大量内容的网页。及时地给用户一些视觉反馈是极好的,就像进度指示器。
HTML页面就是一个进度指示器。当浏览器逐步加载页面,页头,导航条,顶部logo等等,都作为视觉反馈于等待页面的用户,这提高了整体的用户体验。

把样式放在页面底部

如果把样式放在页面底部,根据你的浏览器和你如何加载页面的方式,会有两种不同的副作用,一个是白屏,另一个是无样式内容css闪烁

白屏

当浏览器加载了所有的部件,它等待页面底部不必要的style样式也下载完才开始渲染他们,styles样式并不会影响下载时间,但是它影响渲染的开始时间。

无样式内容闪烁

对于样式放页面底部的情况,另一些浏览器的行为并不会造成白屏,而是无样式内容闪烁。当在底部的styles样式下载完成之前,浏览器并不会等待样式下载完,就去渲染展示内容,页面首先加载无样式的页面内容,最后当样式下载完成并解析,浏览器会重新渲染页面,这就引起了无样式内容闪烁现象;

前端工程师需要做什么

把与页面渲染相关的styles放到页面顶部(head头中),把渲染无关的styles,等页面加载渲染完,再做些努力动态加载他们

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,825评论 1 92
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,765评论 25 709
  • 围绕前端的性能多如牛毛,涉及到方方面面,以我我们将围绕PC浏览器和移动端浏览器的优化策略进行罗列注意,是罗列不是展...
    流动码文阅读 695评论 0 0
  • Runtime 又叫运行时,是一套底层的 C 语言 API,其为 iOS 内部的核心之一,我们平时编写的 OC 代...
    北你妹的风阅读 325评论 0 0
  • 说罢周身绿光闪动,满身黑羽簌簌作响,碧绿的眼睛闪动凶光,虎视眈眈的瞪着我。 “好啊!老妖怪,别以为我会怕你。要打我...
    青丘山上十六郎阅读 470评论 4 3