1

可以不在 HTML 文件中包含这些行吗?删除这些行使代码看起来更干净。

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

当我使用dreamweaver 创建HTML 文件时,会自动包含这些行。

4

5 回答 5

3

不,您不应该删除这些行。

但是,您可以将<!doctype>-declaration 切换为 HTML5 之一,因为这仍会在所有当前浏览器中触发标准模式,即使它们尚未实现 HTML 5。它如下所示:

<!DOCTYPE html>

这比你使用的普通的看起来更干净。您还可以在此处阅读有关新 doctype-declaration的更多信息。您还可以在此处详细了解HTML5 的变化

于 2009-11-19T08:16:45.970 回答
2

不,这是不允许的。它设置字符编码,即浏览器应该如何读取它。但是新的 HTML5 元素让整个事情看起来更简单、更干净。所以:

<!DOCTYPE html
          PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

变成 --><!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml"
      lang="en"
      xml:lang="en">

变成 --><html lang="en">

<meta http-equiv="Content-Type" content="text/html; 
charset=UTF-8">

变成 --><meta charset="UTF-8">

<link rel="stylesheet" href="style.css" type="text/css">

变成 --><link rel="stylesheet" href="style.css">

所以整个代码<head>变成:

<!DOCTYPE html>
<html lang="en">
<meta charset="UTF-8">
<link rel="stylesheet" href="style.css">
于 2012-04-25T18:39:36.937 回答
1

您可以删除 DOCTYPE、html 标记和元标记,并且仍然具有有效的 HTML,如果您对您的页面采用浏览器默认样式感到满意,则可以安全地省略它们。如果您愿意,可以通过 HTTP 标头指定内容类型和字符集。正如其他人已经指出的那样,DOCTYPE 将影响样式指令的解释方式,以及 HTML 解析器如何解释一些无效标记,因此您需要考虑这一点。

于 2009-11-19T09:23:27.677 回答
1

不,您不应该删除这些行。前两行告诉浏览器您的页面是什么类型的文档,并帮助浏览器正确呈现它。

第三行告诉浏览器您正在使用什么字符集,在这种情况下,它知道正确呈现非拉丁字符。

于 2009-11-19T08:07:47.180 回答
1

那些声明了DOCTYPE不应该忘记添加。

为什么?

为什么要指定文档类型?因为它定义了您的文档实际使用的 (X)HTML 版本,这是浏览器或其他处理文档的工具所需的关键信息。

例如,指定文档的 doctype 允许您使用诸如标记验证器之类的工具来检查 (X)HTML 的语法(从而发现可能影响您的页面在各种浏览器中呈现方式的错误)。如果这些工具不知道您使用的是哪种文档,它们将无法工作。

但最重要的是,对于大多数浏览器家族来说,一个 doctype 声明将使很多猜测变得不必要,因此会触发一个“标准”解析模式,在这种模式下,理解(并因此显示) document 不仅速度更快,而且是一致的,并且没有没有 doctype 的文档会创建任何令人意外的惊喜。

于 2009-11-19T08:10:27.550 回答