一、FOUC 是什么

 FOUC即无样式内容闪烁,也可以称为文档样式短暂失效,主要就是指HTML已加载而样式表并未加载,此后样式表再加载而产生的闪烁现象。

  在引用css的过程中,如果方法不当或者位置引用不对,会导致某些页面在windows下的ie出现一些奇怪的现象,以无样式显示页面内容的瞬间闪烁,这种现象称之为文档样式短暂失效,简称FOCU

  原因分析:当样式表晚于结构性 html 加载,当加载到此样式表时,页面将停止之前的渲染。 此样式表被下载和解析后,将重新渲染页面,也就出现了短暂的花屏现象。

二、如何避免FOUC

1、样式表前置

  根据浏览器渲染的顺序,将CSS在<head>中引入或者嵌入,相对于将CSS放到<body>或者页面底部来说,可以使页面渲染速度加快,这对于页面内容比较丰富的网站或者网络链接较慢时相当重要。

  假如将样式表放置于底部,就会导致浏览器还未加载样式表就开始渲染页面,无法渐进式渲染页面而直接从无样式状态立即跳转到有样式状态,就会造成FOUC,用户体验较差;

  此外有些浏览器可能会在CSS下载完成后才开始渲染页面,样式表放在下方会导致页面渲染推迟。

2、尽量使用<link>而避免使用@import

  当HTML文件被加载时,<link>引用的文件会同时被加载,而@import引用的文件则会等页面全部下载完毕再被加载,所以有时候浏览@import加载CSS的页面时会没有样式,会出现FOUC现象,网速慢的时候就比较明显。

  此外当<link>与@import混用可能会对网页性能有负面影响,在一些低版本IE中<link>与@import混用会导致样式表文件逐个加载,破坏并行下载的方式导致页面加载变慢。

  此外无论是哪种浏览器,若在<link>中引入的CSS中继续使用@import加载外部CSS,同样会导致顺序加载而不是并行加载,因为浏览器需要先解析<link>引入的CSS发现@import外部CSS后再次引入外部CSS,这样就导致页面加载变慢。

什么是 FOUC(无样式内容闪烁)?你如何来避免 FOUC?相关推荐

  1. bootstrap 隐藏元素_Bootstrap中折叠面板的样式内容

    Bootstrap折叠板插件允许你在网页中用一点点JavaScript以及CSS类切换内容,控制内容的可见性.它是一个灵活的插件,使用少量的类(来自必需的过渡插件),以方便切换行为. 运作方式 插件用 ...

  2. vue element-ui 手机号校验 验证码校验 获取验证码倒数60秒无样式实现

    这段时间被迫搞前端搞裂开了,记录一下手机号验证码校验登录的极简无样式前端实现 巨丑!希望大佬们不介意 下面是先演示效果 点击登陆后显示校验信息 输入手机号点击获取验证码 输入符合校验的内容后点击登录提 ...

  3. ZedGraph5.1.5源码分析去掉鼠标悬浮内容闪烁问题(附源码下载)

    场景 在使用ZedGraph绘制曲线图时,将鼠标悬浮时内容闪烁,且频率很高. 找到其源码,发现不论鼠标移动的范围大小,甚至乎不论鼠标是否移动,都要刷新一次Tooltip. 注: 博客主页: https ...

  4. 微信小程序CSS样式图片闪烁

    微信小程序CSS样式图片闪烁 微信小程序直接用CSS样式让图片闪烁起来!!! 废话不多说!直接上代码 // 这是设置小程序WXSS页面 .shanshuo{-webkit-animation: twi ...

  5. jquery word export 导出html内容无样式或无图片问题

    1. 首先要准备好对应的js文件 jquery文件,FileSaver,以及主要的jquery.wordexport <script type="text/javascript&quo ...

  6. HTML文字样式显示闪烁,怎么纯用css代码使文字展示闪动效果?(代码示例)

    在网页中,通常设计师们为了凸显自己的产品主题,总会让文字或者加点特效,比如使文字不停的闪动,或有规律的变色.以便达到吸引人关注的目的.那么除了用ps制作的gif动画外,还有哪些方法可以实现这样的功能特 ...

  7. publiccms实现遍历多级分类下的不同样式内容

    大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂 前言 现在是2022年1月2日17:06:51,假期这两天都在做publiccms. 上篇文章遗留的问题,最终还是没有按照富文本去做,后期在看吧: ...

  8. 软考-软件设计师笔记【原创无样式版】需要笔记请联系

    越努力,越幸运!!! 计算机系统基础 (一)CPU的功能 (1)程序控制功能.CPU通过执行指令来控制程序的执行顺序. (2)操作控制. (3)时间控制. (4)数据处理.CPU最根本的任务. (二) ...

  9. Vmware配置共享文件功能(针对ubuntu的/mnt/hgfs无文件内容问题)

    2023.3.15 星期三 长沙 天气晴.实习工作时遇到一个问题,我vmware设置好了共享文件,但是Ubuntu里面无任何文件,查阅资料,有许多人遇到诸如此类的问题,资料有些不完整,故便总结出,方便 ...

最新文章

  1. MIT副教授赵宇飞团队登数学四大顶刊,华人作者中两位是本科生,最小的是00后...
  2. view里文书删除时报错的解决案
  3. append 后如何删除_如何在STATA中合并数据文件呢?
  4. 如何使用mock应对测试所需随机数据
  5. Qt4_在表中显示数据
  6. Rational RequisitePro
  7. 路由器、交换机配置命令简写对照表
  8. dns解析服务器原理,简述DNS服务器原理
  9. 听北大公开课庄明科老师《大学生职业素养提升》第一集:《自我效能感》的笔记
  10. 地方麻将吉林过蛋玩法算法
  11. 相对路径与绝对路径区别
  12. 格密码LLL算法:如何解决最短向量SVP问题(1)
  13. 无敌哥-创新设计思维
  14. ps命令,top命令,pstree命令,缓存和缓冲的区别
  15. 事务隔离级别脏读幻读_脏读和未提交读隔离级别
  16. 几种开源图形相关的库的总结
  17. 一个拿到人人网和淘宝网offer的大四学生的Android学习经历
  18. oim(类QQ)开源项目源码阅读笔记(1)——登录部分
  19. mysql 查询案例dept,emp表内数据
  20. 位在c语言中用什么定义,C语言中位段的详细介绍

热门文章

  1. 常用dns114.114.114.114与8.8.8.8的区别
  2. 智能交通系统(ITS)的无线网络技术
  3. 程序猿的血泪史:一定要有数据备份的思想,不然死都不知道咋死的!!!
  4. 为什么需要一部21世纪的全球通史?
  5. JTextField:单行文本框组件
  6. 大数据常用十种开发语言
  7. 2021年危险化学品经营单位安全管理人员考试报名及危险化学品经营单位安全管理人员证考试
  8. 冰箱变革成AI科技营养管家 COLMO 成功占位营养及高定赛道
  9. 自学HarmonyOS应用开发(64)- 处理屏幕旋转
  10. C# WinForm中Form的load和Shown事件