我使用字体事件解决了FOUC。我已使用p, h1, h2, a, span
隐藏了visibility: hidden
,并在页面的页脚处隐藏了一些javascript,然后在typekit active
事件中将其设置回visible
。
此解决方案在我的本地环境和生产中运行良好,在执行页面重新加载时似乎工作正常。但是在生产中从一个页面到另一个页面点击时它不起作用(截屏视频:http://screencast.com/t/m8YQwFNNsrv)
我认为不同之处在于,当从页面到页面点击时,会利用浏览器缓存。
答案 0 :(得分:2)
可能是竞争条件。 Web字体响应在您到达页面底部之前(从缓存)进行评估,其中JS隐藏这些元素的执行,但到那时没有效果。
如果Web字体最终无法加载并且您隐藏了内容,我总是发现让FOUC发生而不是解决许多边缘情况会更好。