头部和身体之间的脚本元素。 [HTML5]

时间:2013-05-02 21:37:21

标签: javascript jquery html html5 validation

在使用W3C进行验证时,我收到了回复:

  

头部和身体之间的脚本元素。 [HTML5]

这与HTML5与常规XHTML验证相比如何?

HTML:

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<link href="services.css" rel="stylesheet" type="text/css">
<script></script>
</head>
<body>

<div id="container">

  <div id="header">
  </div>

  <div id="body">
  </div>

  <div id="footer">
  </div>

</div>
<script></script>
</body>
</html>

4 个答案:

答案 0 :(得分:10)

您将脚本放在无效位置。

您应该将它们放在头部或身体标签内。每次都可以,把它们放在身体的尽头。这是为了避免在下载脚本时阻止html呈现,从而提高站点响应能力。

来自w3.org

  

SCRIPT元素将脚本放在文档中。此元素可能在HTML文档的HEAD或BODY中出现任意次。

答案 1 :(得分:2)

就像消息所说的那样,这是无效的(不只是脚本标签,而是任何标签):

</head>
<tag/>
<body>

这些<script>代码必须是 <{em> <body><head>的后代。

答案 2 :(得分:0)

尝试将脚本放在底部的body标记内。

答案 3 :(得分:0)

根据消息的建议,您可以将某些脚本“浮出”headbody个标记。

将其移到头部或身体标签内:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script type="text/javascript" src="/fancybox/source/jquery.fancybox.pack.js?v=2.1.4">    </script>
<link rel="stylesheet" type="text/css" href="/fancybox/source/jquery.fancybox.css?v=2.1.4" media="screen">
<script type="text/javascript">
    $(document).ready(function() {
        $('.fancybox').fancybox();
    });
</script>