代码之家  ›  专栏  ›  技术社区  ›  Jitendra Vyas

由于<head>中的javascript阻止了HTML呈现,CSS也不是这样吗?

  •  0
  • Jitendra Vyas  · 技术社区  · 15 年前

    由于JavaScript在块HTML中呈现,在关闭body标记之前,将JavaScript保持在底部是一个很好的实践,CSS也不是这样吗?

    我知道我们不能把外部CSS放在外面。

    6 回复  |  直到 15 年前
        1
  •  6
  •   Sean Vieira    15 年前

    CSS不会像JavaScript那样阻塞

    Yahoo's Developer Network Blog

    对于样式表,在下载所有样式表之前,渐进式呈现将被阻止。这就是为什么最好将样式表移动到文档头部,这样它们会先被下载,并且呈现不会被阻止。使用脚本,将阻止所有内容的渐进式呈现 剧本。在页面中尽可能低地移动脚本意味着在脚本之上有更多的内容可以更快地呈现。

        2
  •  2
  •   zwol    15 年前

    CSS不仅不会像Javascript那样阻塞,而且如果您将CSS放在除 <head> ,比如忽略它,或者不完全应用它。HTML5实际上禁止 <style> <头部> (除了AFAIK还没有实现的“scoped”特性)。

        3
  •  1
  •   zwol    15 年前

    <link> 元素,此元素仅在位于文档头部时才有效。至于CSS阻塞HTML呈现,情况并非如此,因为CSS是在浏览器加载后应用的,就像其他浏览器一样 < 元素。JS阻塞HTML是因为浏览器假设JS想要获得控制权,并在完全加载DOM之前实际执行一些操作,基本上JS是执行的,然后是单独的。

        4
  •  0
  •   szanata    15 年前

    不,css在浏览器读取css后立即应用于DOM元素。

    window.onload = function (){
    
    //here we start
    }
    
        5
  •  0
  •   luigi7up    11 年前

    JS公司

    <script src="..." > 因此,将所有外部JS放在 <body> . 这样你的HTML就可以被解析和呈现,你的用户会感觉到一些事情正在发生。。。

    CSS

    FOUC . 但它不会阻止下载

    HEAD 最底层的JS还不够。。。您将希望将ATF(在fold之上)CSS内联起来,将其余的巨大最小化CSS与JS一起放在底部/延迟和异步

    看看这个: http://addyosmani.com/blog/detecting-critical-above-the-fold-css-with-paul-kinlan-video/

        6
  •  -2
  •   Alohci    15 年前

    为什么把Javascript放在最底层是一个好的实践呢?

    我认为最好将CSS和Javascript放在不同的文件中,并使用 <head>