Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我应该把CSS和Javascript代码放在HTML网页的哪里?_Javascript_Html_Css - Fatal编程技术网

我应该把CSS和Javascript代码放在HTML网页的哪里?

我应该把CSS和Javascript代码放在HTML网页的哪里?,javascript,html,css,Javascript,Html,Css,在设计网页时,我应该将以下代码放在哪里 我应该把它放在还是应该把它放在中? 请澄清以下问题: 如果我把它放在或HTML代码周围的任何地方,会有什么区别 如果我有两个CSS(或Javascript)文件怎么办?由于我只能在另一个文件之前包含一个文件,web浏览器将使用哪个文件来显示网页 你应该把它放在箱子里。我通常会将样式引用放在JS之上,如果其中一些依赖于其他的,我会从上到下排列JS,但我相信所有的引用都是在呈现页面之前加载的。在我看来,最好的做法是将CSS文件放在页眉中 <head&g

在设计网页时,我应该将以下代码放在哪里

我应该把它放在
还是应该把它放在
中? 请澄清以下问题:

  • 如果我把它放在
    或HTML代码周围的任何地方,会有什么区别
  • 如果我有两个CSS(或Javascript)文件怎么办?由于我只能在另一个文件之前包含一个文件,web浏览器将使用哪个文件来显示网页

  • 你应该把它放在箱子里。我通常会将样式引用放在JS之上,如果其中一些依赖于其他的,我会从上到下排列JS,但我相信所有的引用都是在呈现页面之前加载的。

    在我看来,最好的做法是将CSS文件放在页眉中

    <head>
      <link rel="stylesheet" href="css/layout.css" type="text/css">
    </head>
    
    
    
    以及关闭
    标记之前的Javascript文件

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

    如果你有,就像你说的两个CSS文件。浏览器将同时使用这两种方法。如果两个CSS文件中都有相同的选择器,例如,
    .content{}
    ,浏览器将用第二个CSS文件的属性覆盖第一个CSS文件的类似属性。如果这有意义的话。

    您应该将CSS放在
    中,因为规范就是这么说的

    如果您有多个CSS文件,它们将按照您在代码中放置的顺序加载。如果第二个CSS文件中有样式,它将覆盖第一个CSS文件中的样式;这是有计划的。因此,级联样式表

    大多数浏览器仍能有效地呈现头部以外的CSS文件,但您的代码在语义上并不正确

    您可以在文档的任何位置使用JavaScript文件链接。使用
    中的一些和页面上其他地方的一些有不同的原因。(例如,谷歌分析代码被指示放在底部。)

  • 您应该将样式表链接和javascript
    放在
    中,因为这是由格式决定的。但是,有些人将javascript
    放在正文的底部,这样页面内容就可以加载,而不必等待
    ,但这是一种折衷,因为脚本执行会延迟到加载其他资源
  • CSS按链接顺序优先(相反):第一个被第二个覆盖,第三个覆盖,等等

  • 将样式表放在顶部

    在雅虎研究业绩时!,我们发现,将样式表移动到文档头会使页面的加载速度加快。这是因为将样式表放在头部允许页面逐步呈现

    关心性能的前端工程师希望逐步加载页面;也就是说,我们希望浏览器尽快显示它拥有的任何内容。这对于包含大量内容的页面以及网速较慢的用户来说尤为重要。向用户提供视觉反馈(如进度指标)的重要性已得到充分研究和记录。在我们的例子中,HTML页面是进度指示器!当浏览器逐步加载页面时,页眉、导航栏、顶部的徽标等都可以作为等待页面的用户的视觉反馈。这改善了总体用户体验

    将样式表放在文档底部附近的问题是,它禁止在许多浏览器(包括Internet Explorer)中进行渐进式渲染。这些浏览器阻止呈现,以避免在样式更改时必须重新绘制页面元素。用户无法查看空白的白色页面

    规范明确指出,样式表将被包含在页面的头部:“不像A,[Link ]可能只出现在文档的头部分,尽管它可能出现任何次数。”无论是空白屏幕还是空白样式的内容,都不值得冒风险。最佳的解决方案是遵循HTML规范并将样式表加载到文档头中

    将脚本放在底部

    脚本造成的问题是它们阻止并行下载。HTTP/1.1规范建议浏览器每个主机名最多并行下载两个组件。如果您从多个主机名提供图像,您可以同时获得两次以上的下载。但是,在下载脚本时,浏览器不会启动任何其他下载,即使是在不同的主机名上

    在某些情况下,将脚本移到底部并不容易。例如,如果脚本使用document.write插入页面内容的一部分,则无法将其移到页面的较低位置。也可能存在范围界定问题。在许多情况下,有办法解决这些情况


    另一个经常出现的建议是使用延迟脚本。“延迟”属性表示脚本不包含document.write,并提示浏览器可以继续渲染。不幸的是,Firefox不支持DEFER属性。在Internet Explorer中,脚本可能会延迟,但延迟的时间可能不会太长。如果脚本可以延迟,它也可以移动到页面底部。这将使您的网页加载更快。

    如果您要调用多个.css或.js文件,只需将它们一个接一个地包含进来,或者:

    <head>
    
    <link href="css/grid.css" rel="stylesheet" />
    
    <link href="css/style.css" rel="stylesheet" />
    
    <script src="js/jquery-1.4.4.min.js"></script>
    
    <script src="js/jquery.animate-colors-min.js"></script>
    
    </head>
    

    CSS include应该在任何
    js
    脚本包含之前放在
    标题中。
    Javascript可以去任何地方,但实际上文件的功能可以确定位置。如果它构建了页面内容,就把它放在头上。如果它用于事件或跟踪,您可以将其放在关于
    之前,您没有选择权,它们必须位于
    部分(请参阅和)

    关于
     <head>
      <link href="css/grid.css" rel="stylesheet" />
     </head>
    
    <head>
      <link href="css.script " rel="stylesheet" />
     </head>