HTML 标签 HTML <b>字体加粗 标签HTML <big> 大号字体 标签HTML <em> 强调标签HTML <strong> 重要事务标签HTML <dfn>定义实例标签HTML <code> 计算机代码 标签HTML <samp> 计算机输出 标签HTML <kbd> 用户输入 标签HTML <var> 变量 标签HTML <cite> 作品标题 标签HTML <i> 字体斜体 标签HTML <small> 侧记 标签HTML <sup>上标 标签HTML <sub>下标 标签HTML <ins>插入 标签HTML <del>删除 标签HTML <s>删除 标签HTML <strike> 删除标签HTML <u>下划线 标签HTML <tt>打印机文字 标签HTML <pre>预格式化的文本 标签HTML <abbr>缩写体 标签HTML <acronym>首字母缩写 标签HTML <address>联系信息 标签HTML <bdo>覆盖文本方向 标签HTML <blockquote> 长引用 标签HTML <q> 短引用 标签HTML <link> 外部资源 标签HTML <style> 样式标签HTML <title> 标题标签HTML <base>文档根 URL标签HTML <meta> 元数据标签HTML <script> 脚本标签HTML <noscript> 不支持脚本标签HTML <command> 定义命名标签HTML <head> 头部标签HTML <map> 图像映射标签HTML <img> 图像标签HTML <area> 图像映射区域标签HTML <a> 超链接标签HTML <div>块标签HTML <span>局部布局标签HTML <form> 表单 标签HTML <optgroup>选项组 标签HTML <option>选项 标签HTML <select> 下拉列表 标签HTML <datalist> 选项列表 标签HTML <input> 表单交互 标签 HTML <textarea> 多行文本 标签HTML <button> 按钮 标签 HTML <legend> 分组标题 标签HTML <fieldset> 分组 标签 HTML <label> 标识 标签 HTML <h1><h2><h3><h4><h5><h6>标题 标签HTML <hr> 水平线 标签HTML <ol> 有序列表 标签 HTML <li> 列表项 标签HTML <ul> 无序列表 标签HTML <dl>描述列表 标签HTML <dt>描述列表项目名 标签HTML <dd>描述列表子项目 标签HTML <output>输出 标签 HTML <p>段落 标签HTML <table>表格 标签HTML <tr>表格行 标签HTML <th>表标题 标签HTML <td>表单元格 标签HTML <caption>表名称 标签HTML <col>列属性 标签HTML <colgroup>列组合 标签HTML <thead>表格表头 标签HTML <tbody>表格主体 标签HTML <tfoot>表格底部 标签HTML <br>换行 标签HTML <object>对象 标签HTML <iframe>标签HTML <header> 区域页眉 标签HTML <footer> 区域页脚 标签HTML <article> 定义文章 标签HTML <section> 定义章节 标签HTML <canvas>绘制图形图像标签HTML <svg>矢量图形 标签HTML <source>媒体资源标签HTML <picture>图像资源标签 HTML <video>定义视频标签HTML <audio>定义音频标签HTML <applet>嵌入applet标签HTML <basefont>定义文档字体属性标签HTML <center>文字水平居中标签HTML <dir>目录列表标签HTML <font>字体样式标签HTML <frame>框架集窗口标签HTML <frameset>框架集标签HTML <noframes>不支持框架集文本标签HTML <wbr>换行符标签HTML <time>日期时间标签HTML <rp>不支持ruby显示内容标签HTML <rt>注释的解释标签HTML <ruby>注释标签HTML <progress>进度条标签HTML <nav>导航标签HTML <meter>计量标签HTML <mark>高亮文本标签HTML <figcaption>figure元素标题标签HTML <figure>独立内容标签HTML <summary>details元素标题标签HTML <dialog>对话框标签HTML <details>详细信息标签HTML <bdi>脱离文本方向标签HTML <aside>侧栏标签HTML <keygen>生成密钥标签HTML <track>外部字幕标签HTML <embed>嵌入内容标签HTML <main>主体部分 标签HTML <param>对象参数标签HTML <!DOCTYPE>声明HTML <!-- --> 注释标签

HTML <!DOCTYPE>声明

在 HTML 中,<!DOCTYPE>声明是文档类型声明,用于告诉浏览器当前 HTML 文档所遵循的 HTML 版本和标准。它是 HTML 文档的第一行,必须在<html>标签之前出现。

语法

<!DOCTYPE html>

案例

以下是一个简单的 HTML 文档,其中包含了<!DOCTYPE>声明:

<!DOCTYPE html>
<html>
<head>
    <title>我的网页</title>
</head>
<body>
    <h1>这是我的网页</h1>
    <p>这是一段文本。</p>
</body>
</html>

在上述案例中,<!DOCTYPE html>声明告诉浏览器当前文档遵循 HTML5 标准。然后,<html>标签表示 HTML 文档的根元素,<head>标签包含了文档的元数据,如文档标题、样式表等,<body>标签包含了文档的内容,如文本、图片、链接等。

常见的 DOCTYPE 声明

HTML 5

<!DOCTYPE html>

HTML 4.01 Strict

这个 DTD 包含所有 HTML 元素和属性,但不包括表象或过时的元素(如 font )。框架集是不允许的。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

HTML 4.01 Transitional

这个 DTD 包含所有 HTML 元素和属性,包括表象或过时的元素(如 font )。框架集是不允许的。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

HTML 4.01 Frameset

这个 DTD 与 HTML 4.01 Transitional 相同,但是允许使用框架集内容。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

XHTML 1.0 Strict

这个 DTD 包含所有 HTML 元素和属性,但不包括表象或过时的元素(如 font )。框架集是不允许的。结构必须按标准格式的 XML 进行书写。

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

XHTML 1.0 Transitional

这个 DTD 包含所有 HTML 元素和属性,包括表象或过时的元素(如 font )。框架集是不允许的。结构必须按标准格式的 XML 进行书写。

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

XHTML 1.0 Frameset

这个 DTD 与 XHTML 1.0 Transitional 相同,但是允许使用框架集内容。

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

XHTML 1.1

这个 DTD 与 XHTML 1.0 Strict 相同,但是允许您添加模块(例如为东亚语言提供 ruby 支持)。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

HTML 4.01 与 HTML5之间的差异

HTML 4.01 规定了三种不同的 <!DOCTYPE> 声明,分别是:Strict、Transitional 和 Frameset。

HTML5 中仅规定了一种:

<!DOCTYPE html>

注意事项

1. <!DOCTYPE>声明不是 HTML 标签,它是一种指令,用于告诉浏览器如何解析和呈现 HTML 文档。

2. <!DOCTYPE>声明必须在 HTML 文档的第一行出现,否则浏览器可能会以 quirks 模式或其他不兼容的模式呈现文档。

3. 不同的 HTML 版本和标准可能有不同的<!DOCTYPE>声明,因此在使用时需要根据实际情况选择正确的声明。

4. 如果 HTML 文档没有<!DOCTYPE>声明,浏览器可能会使用默认的 HTML 4.01 Transitional 或 XHTML 1.0 Transitional 声明,这可能会导致一些兼容性问题。

5. 在 HTML5 中,<!DOCTYPE>声明被简化为<!DOCTYPE html>,这是 HTML5 文档的唯一正确声明。

6. 在使用<!DOCTYPE>声明时,建议遵循 W3C 的标准和规范,以确保 HTML 文档的兼容性和可访问性。


总之,<!DOCTYPE>声明是 HTML 文档的重要组成部分,它告诉浏览器当前文档所遵循的 HTML 版本和标准。在使用<!DOCTYPE>声明时,需要注意声明的正确性、遵循 W3C 的标准和规范、进行充分的测试和验证、注意文档的可访问性以及考虑浏览器的兼容性等方面的问题,以确保 HTML 文档的正确性、兼容性和可访问性。