我用w3c validation service验证了我的moodle网站。在其中,有这个代码导致了很多问题:
<!DOCTYPE html>
<html dir="ltr" lang="en" xml:lang="en" class="yui3-js-enabled">
<div id="yui3-css-stamp" style="position: absolute !important; visibility: hidden !important" class=""></div>
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Course: Program 1 :title</title>
<meta name="keywords" content="moodle, xxxxxxxxx">
<script async="" src="./test_files/analytics.js"></script><script type="text/javascript">
我的问题是,div标签可以在标签内,但不能在标签内吗?
答案 0 :(得分:2)
不,它不能 - 这不是正确的HTML,
当然它几乎可以在任何浏览器中使用,因为大多数现代浏览器都对不正确的HTML非常宽容
看起来你绝对定位它,也许我在假设,因为你想要它在其他任何东西之上。不要担心 - 您仍然可以在<body>
标记
答案 1 :(得分:1)
虽然HTML是灵活的,并且浏览器是宽容的,但HTML确实指定了基本结构。标题中的内容包含有关页面的元数据,以及浏览器应获取的CSS等资源。浏览器用于绘制网页的文档树部分应基于正文标记中的内容。
以下是标记的修订示例,以显示改进它的一种方法。
<!DOCTYPE html>
<html dir="ltr" lang="en" xml:lang="en" class="yui3-js-enabled">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Course: Program 1 :title</title>
<meta name="keywords" content="moodle, xxxxxxxxx">
<script async="" src="./test_files/analytics.js"></script>
<script type="text/javascript"></script>
</head>
<body>
<div id="yui3-css-stamp" style="position: absolute !important; visibility: hidden !important" class=""></div>
</body>
</html>
答案 2 :(得分:0)
答案是没有不正当的做法根据浏览器,页面可能会或可能不会中断
答案 3 :(得分:0)
不,div标签必须在body标签内。