JS相关概念

2017-10-20  本文已影响0人  月光下的微笑

CSS和JS在网页中的放置顺序是怎样的?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./css/style.css">
</head>
<body>
    html tag
    <script src="./js/jquery.js"></script>
</body>

</html>

为了防止白屏,最好是吧css刚在head里面,js放在body的最后面。如上。

为什么会白屏,还有FOUC是什么

async和defer的作用是什么?有什么区别

我觉得如果不用这两个属性的话,<script>标签会中断浏览器的渲染来解析脚本,如果加上这两属性他们会在浏览器渲染的同时把他们下载下来先不解析,等到页面dom,cssdom渲染完毕在执行,而defer会把脚本先后顺序按照你写的顺序解析,而async则没有这个功能。

浏览器渲染机制

  1. 解析 HTML 标签, 构建 DOM 树
  2. 解析 CSS 标签, 构建 CSSOM 树
  3. 把 DOM 和 CSSOM 组合成 渲染树 (render tree)
  4. 在渲染树的基础上进行布局, 计算每个节点的几何结构
  5. 把每个节点绘制到屏幕上 (painting)
上一篇 下一篇

猜你喜欢

热点阅读