頁面的白屏問題和FOUC

白屏問題

如果把樣式放在底部,對于IE瀏覽器,chrome等(css全部加載后再呈現(xiàn),有可能等待長),在某些場景下(新窗口打開,刷新等)頁面會出現(xiàn)白屏,而不是內(nèi)容逐步展現(xiàn)。使用 @import 標(biāo)簽,即使 CSS 放入 link, 并且放在頭部,也可能出現(xiàn)白屏。
對于圖片和CSS, 在加載時會并發(fā)加載(如一個域名下同時加載兩個文件)。 但在加載 JavaScript 時,會禁用并發(fā),并且阻止其他內(nèi)容的下載. 所以把 JavaScript 放入頁面頂部也會導(dǎo)致 白屏 現(xiàn)象.

解決方法
  • CSS:一般將css放置head里用style包裹,也可以使用link標(biāo)簽引入。
  • JS:一般放置body標(biāo)簽的尾部
  • async : 加載和渲染后續(xù)文檔元素的過程將和 script.js 的加載與執(zhí)行并行進(jìn)行(異步)。
  • defer:加載后續(xù)文檔元素的過程將和 script.js 的加載并行進(jìn)行(異步),但是script.js 的執(zhí)行要在所有元素解析完成之后,DOMContentLoaded 事件觸發(fā)之前完成。

FOUC:

Flash of Unstyled Content "無樣式內(nèi)容閃爍“:有些瀏覽器是邊渲染邊呈現(xiàn),CSS放置body標(biāo)簽底部,會出現(xiàn)加載html結(jié)束后才一次性加載css樣式,從而導(dǎo)致頁面閃爍。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,786評論 1 92
  • 一:在制作一個Web應(yīng)用或Web站點的過程中,你是如何考慮他的UI、安全性、高性能、SEO、可維護(hù)性以及技術(shù)因素的...
    Arno_z閱讀 1,204評論 0 1
  • 轉(zhuǎn)載請聲明 原文鏈接地址 關(guān)注公眾號獲取更多資訊 第一部分 HTML 第一章 職業(yè)規(guī)劃和前景 職業(yè)方向規(guī)劃定位...
    前端進(jìn)階之旅閱讀 16,594評論 32 459
  • 男皇后韓子高目錄 第一章 第一節(jié) 亂世返鄉(xiāng) 第一章 第二節(jié) 林中結(jié)緣 553年二月的一個清晨,我們離開了京城,這一...
    上官巧兒閱讀 1,110評論 2 1
  • 雙贏品德的三要素:誠信、成熟和知足。 成熟是敢作敢為與善解人意之間的一種平衡狀態(tài)。是在表達(dá)自己的情感和信念的同時又...
    vivi是巨蟹座閱讀 457評論 0 0