【发布时间】:2013-05-25 15:30:14
【问题描述】:
我有点自学,我正在使用 W3 验证器来检查我的代码。 现在我得到了这个加载的文件:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="main.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
include("menu.php");
?>
<?php
if (is_file("$file.inc.php")) include ("$file.inc.php");
else include("homepage.inc.php");
?>
</body>
</html>
在您选择的菜单中,例如“页面 A”,然后加载为“pageA.inc.php”,其中包含:
<title>SUPERAWESOME TITLE of page A</title>
text text text
...
它工作正常,但我在 W3 验证器中遇到了这组错误,我不知道如何处理:
- 在第一组代码中:“HEAD”的结束标记未完成,不包含“TITLE”
- 在第二组代码中:文档类型在此处不允许元素“TITLE”
如果我在第一组代码中设置标题,以解决第一个问题,它总是显示相同的标题。 如果我在第二组代码中设置标签,我会在 W3 验证器中收到更多错误,说它不允许在那里。
我该如何解决这个问题? 还是我不应该关心?它现在正在按应有的方式工作,我只是在验证时被错误所困扰。
【问题讨论】:
-
没错,是的,
<title>应该放在<head>里面,而不是<body>里面。就是这样。标题是关于 html 文件的信息的一部分,而不是内容的一部分。所以把包含的标题放在<head>和</head>之间。 -
使用 HTML4 的任何具体原因?或 ISO-8859。
-
@Juhana HTML 4 有什么问题?或者 ISO-8859-1。
-
@MrLister 没什么,但你会认为如果你从零开始,你会直接到 5。但除非有外部原因,否则不使用 Unicode 是错误的。跨度>
-
@MrLister 据我所知,所有浏览器在遇到无法识别的类型时都会退回到
type="text"。另一方面,即使您不使用任何 HTML5 专用功能,使用 HTML4 doctype 也没有任何好处。