美文网首页
进阶任务1

进阶任务1

作者: 王翔爱摇滚乐爱电影爱心理学爱哲 | 来源:发表于2017-03-13 14:14 被阅读0次

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

css样式放在head中。
js放置在body标签内的最后,script标签内。外链用<script src=""></script>,内部的用<script></script>

 <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title>标题</title>
            <link href="index.css" rel="stylesheet">
        </head>
        <body>
            <script src="index.js"></script>
        </body>
    </html>

2、白屏问题

解答:如果把样式放在底部,对于IE浏览器,在某些场景下(新窗口打开,刷新等)页面会出现白屏,而不是内容逐步展现
如果使用 @import 标签,即使 CSS 放入 link, 并且放在头部,也可能出现白屏。
因为脚本会阻塞后面内容的呈现和其后组件的下载
对于图片和CSS,在加载时会并发加载(如一个域名下同时加载两个文件)。但在加载JavaScript 时,会禁用并发,并且阻止其他内容的下载。所以把JavaScript放入页面顶部也会导致白屏现象。

关于白屏,其实是因为浏览器在渲染的时候请求时间过长导致的,比如Chrome的渲染流程大致是HTML-->Dom-->Css-->Cssom-->Render Tree-->进行计算-->painting最终才是我们看到的网页界面,但是如果你是在一些国外的网站,或者被墙的地方进行反问,浏览器就回一直现实它的加载动作而没有最终页面,也就网页响应时间过长而导致的白屏,另一种情况就是当我门使用@import(),属性的时候也可能导致浏览器渲染不及时,又或者我们把标签放在了body的底部位置,都可能导致不及时的现象.

3、FOUC无样式内容闪烁

FOUC无样式内容闪烁如果把样式放在底部,对于IE浏览器,在某些场景下(点击链接,输入URL,使用书签进入等),会出现FOUC现象(逐步加载无样式的内容,等CSS加载后页面突然展现样式).对于Firefox会一直表现出 FOUC。

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

答:首先,如果不使用async和defer name浏览器的当加载到scrpit标签的时候会重上到下进行加载,并在加载DOM的内容之前进行加载.也就是说不等待后续载入的文档元素,读到就加载并执行。
有 async,加载和渲染后续文档元素的过程将和 script.js 的加载与执行并行进行(异步).async不保证顺序
有 defer,如果给script标签添加了defer属性,即使js放在head里面,它也会在HTML页面解析完毕之后再执行,也就是类似于把这个js放在了页面底部。简单来说就是等页面的html和css加载完毕之后再加载js。 defer脚本延迟到文档解析和显示后执行,有顺序

5、简述网页的渲染机制

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

相关文章

  • 进阶任务1

    一,CSS和JS在网页中的放置顺序是怎样的? css放在html中的head标签中,放在其他位置可能出现白屏或者-...

  • 进阶任务1

    1.CSS和JS在网页中的放置顺序是怎样的?CSS放置在head中,JS放置在body的底部。2.解释白屏和FOU...

  • 进阶任务1

    css和js在网页中的放置顺序是怎样的? 对于css:应该放在 标签中,放在其他位置可能出现白屏或者-FOUC 对...

  • 进阶-任务1

    CSS和JS在网页中的放置顺序是怎样的? CSS一般放置在头部,即head中,以便于浏览器先加载CSS文件,快速出...

  • 进阶任务1

    CSS和JS在网页中的放置顺序是怎样的?## CSS一般是放在 位置内,否则容易出现白屏或者FOUC;JS一般放在...

  • 进阶任务-1

    1.CSS和JS在网页中的放置顺序是怎样的? css样式放在head中。 js放在body标签内的最后,外部链用 ...

  • 进阶任务1

    CSS和JS在网页中的放置顺序是怎样的? css可以使用link的标签进行引入,也可以直接写在style标签内,并...

  • 进阶任务1

    1、CSS和JS在网页中的放置顺序是怎样的? css样式放在head中。js放置在body标签内的最后,scrip...

  • js进阶任务1

    CSS和JS在网页中的放置顺序是怎样的? css 一般放在html文件的 标签中js 一般放在 的底部 解释白...

  • 进阶任务1(主线任务):JS相关概念

    任务 CSS和JS在网页中的放置顺序是怎样的? 解释白屏和FOUC async和defer的作用是什么?有什么区别...

网友评论

      本文标题:进阶任务1

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