浏览器渲染步骤

作者: 大大的萝卜 | 来源:发表于2017-03-01 22:36 被阅读0次

首先,让我们来看一段代码:

<html>
<head>
    <title>标题</title>
    <link href="../css/css.css" rel="Stylesheet" type="text/css" />
</head>
<body>
    <div>
    </div>
    ![](images/test.jpg)
    <p>
    </p>
</body>
<script type="text/javascript" src="js/js.js"></script>
</html>

我们现在要在浏览器中显示以上结构的HTML。
1.客户端浏览器开始从用户向服务器发出请求,服务器响应的将如上的HTML返回给请求的客户端浏览器中。

2.加载从<html>标签开始,并发现<head>标签内有个外部样式文件要加载

<link href="../css/css.css" rel="Stylesheet" type="text/css" />

3.这时客户端浏览器又向服务器发出一个请求加载css.css文件,服务器响应。

4.此时客户端浏览器继续加载html文件里<body>里的标签,在css.css文件加载完后,同时开始渲染页面。

5.客户端浏览器在body里的标签中发现一个img标签并且引用了服务器进而的一张名为test.jpg的图片.客户端浏览器又向服务器发出一次请求。而浏览器不会因为此时正在加载img标签里的图片而停止等待图片加载完,浏览器继续渲染还未完成的部分。

6.img标签里的图片加载完了,则要显示出来,同时图片会占有一定的面积,又会影响到后面的布局,浏览器不得不又回来重新渲染一次这部分。

7.把body里的标签加载及渲染完后,浏览器又发现了一段代码:

<script type="text/javascript" src="js/js.js"></script>

8.浏览器又立刻向服务器发出请求加载js.js文件,服务器响应。

9.浏览器又在js.js文件中发现了一段代码,是干嘛干嘛的,比如隐藏某元素,此时浏览器又要重新去渲染被隐藏的部分。

10.最后到浏览器发现了</html>为止。

这是最合理的渲染步骤,如果把js文件放在head标签里,这个js文件加载时间又过长,那会影响用户体验,一直在等待浏览器呈现内容。

将css文件首先加载,也就是html的内容出来一个,那就样式给它加上,先渲染出来,而不会让用户处于干等的状态。

如果将css文件放在最后,那么首先渲染出的内容则有可能杂乱无章,影响美观。

相关文章

  • 前端工程师必备:从浏览器的渲染到性能优化

    浏览器渲染 1.浏览器渲染图解 [来自google开发者文档] 浏览器渲染页面主要经历了下面的步骤: 1.处理 H...

  • 前端渲染机制及重绘/回流

    渲染机制 渲染步骤 浏览器的渲染机制一般分为以下几个步骤: 1. 处理 HTML 并构建 DOM 树。2. 处...

  • CSS 总结(渲染原理+css动画transition/anim

    浏览器渲染原理 浏览器渲染必经之路 步骤: 根据HTML构建HTML树(DOM) 根据css构建css树(CSSO...

  • 浏览器渲染原理以及CSS动画

    1 浏览器渲染 1.1 浏览器渲染步骤 HTML (DOM树) CSS(CSS树) DOM树和CSS树组合成ren...

  • 浏览器渲染步骤

    首先,让我们来看一段代码: 我们现在要在浏览器中显示以上结构的HTML。1.客户端浏览器开始从用户向服务器发出请求...

  • 浏览器渲染步骤

    HTML解析出DOM Tree Css解析出Style rules 两者关联生成Render Tree Layou...

  • 前端的性能优化

    想要了解前端的性能优化,必须要先知道浏览器运行的步骤,从中进行优化 1,浏览器渲染的步骤 1,对网址进行 DNS域...

  • 浏览器渲染页面步骤

    一,页面渲染就是浏览器将 HTML 代码根据 CSS 定义的规则显示在浏览器窗口中的这个过程,理解了原理就更会容易...

  • 浏览器渲染

    只涉及浏览器客户端渲染 浏览器客户端渲染大体步骤 1.将从服务器获取的HTML文档进行解析、构建成DOM2.将CS...

  • 前端必读-浏览器加载页面时都做了什么

    当一个浏览器接收到从服务器发来的html页面,在渲染并呈现到屏幕上之前,有很多步骤要做。浏览器渲染页面需要做的一系...

网友评论

    本文标题:浏览器渲染步骤

    本文链接:https://www.haomeiwen.com/subject/ibwcgttx.html