html - 渐进式渲染是如何工作的?

标签 html http browser

首先,我将解释我认为渐进式渲染是如何工作的,这样如果我错了或遗漏了什么,您可以纠正我。

当您请求一个页面时,浏览器会尝试尽可能快地显示元素,即使它没有收到所有文档,但为此它需要所有样式都已下载,对吧?

我的问题是: 浏览器如何知道没有剩余的样式需要获取?

我能想到的唯一方法是获取整个文档并对其进行解析,但是渐进式渲染将毫无意义,因为所有元素都已经存在!

谢谢。

最佳答案

当您在头部加载 CSS 时,您的浏览器将在页面中显示元素之前下载该 CSS。这样你就不会得到 FOUC (在大多数情况下)。

如果您在别处加载了 CSS,您的页面完全有可能在加载该 CSS 之前显示。

how does the browser knows there are no styles left to be fetched?

浏览器解析文档,并知道还有什么需要下载。如果稍后加载更多 CSS,它将向页面添加 CSS 并根据需要重绘页面。

关于html - 渐进式渲染是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22109018/

相关文章:

node.js - node/express 中的 "/register"和 "register"路由是否相同?

javascript - 页面加载时如何运行函数?

python - Flask 的 render_template() 问题

javascript - 对于 HTTP OPTIONS 请求,拥有响应正文有什么意义吗?

html - 去除 rails 中某些路线的 newrelic rum.js 脚本

javascript - 我需要从 javascript 读取 HKEY_CURRENT_USER 吗?

html - 根据 div 居中图标并在 div 之间放置空间

python - 修改带有换行符的 BeautifulSoup .string

java - 使用java在同一浏览器中打开新选项卡

firefox - 浏览器调试 - 如何让浏览器重新加载服务器的响应而不重新请求它?