<head>
<script src="/some/path/to/js"></script>
<link href="/some/path/to/css">
</head>
当我们有一个 <script>
<head>
中的标记(用于 js 文件) <link>
前的标签标记(用于 css 文件)。浏览器首先请求哪个文件?
- 是否会同时请求 css 和 js 文件?
- 是否会先等待 js 文件下载后再请求 css 文件?
- 或者,它会先下载 css,用完整的 HTML 和 CSS 呈现页面,然后再请求 js 文件吗?
Describe the page rendering process in a browser? 这篇文章没有解释 js 文件的阻塞特性以及它如何影响 HTML 呈现/解析。
最佳答案
一般来说……<script>
不是 defer
的元素或 async
可以document.write
所以阻止进一步解析 HTML 文档。 <link>
在处理脚本之前不会将其添加到 DOM,因此在此之前它不会下载 CSS。
但是,HTTP 2 即将到来,这允许服务器启动 delivering associated resources无需浏览器明确请求它们。
关于javascript - 哪个文件先下载? CSS 或 JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51991475/