- 域名解析。(先查找本地DNS缓存列表,没有的话再向默认的DNS服务器发送查询请求并缓存)
- 发起TCP的3次握手。(TCP只能连接,发送数据必须使用HTTP)
- 建立TCP连接后发起http请求。
- 服务器端响应http请求,浏览器得到html代码。
- 浏览器解析html代码,并请求html代码中的资源。
- 浏览器对页面进行渲染呈现给用。
- 关于线程阻塞:CSS会阻碍DOM解析,同时CSS也会阻碍JS执行,但是不阻碍JS加载,而JS会阻碍DOM解析,所以CSS放头部,JS放尾部。
- 首屏时间而言,js放在HTML文档的开头和结尾处效果是一样的。而js放在结尾的目的并不是为了减少首屏时间,而是由于js经常需要操纵DOM,放在后面才更能保证找到DOM节点。
- 参考连接 https://www.cnblogs.com/Bonnie3449/p/8419609.html