搞过前端的人,都知道写html要加上<!DOCTYPE>声明。我对HTML <!DOCTYPE> 这个标签,真是天天见,天天视而不见。这个标签到底是干嘛用的?我还真说不出来。今天我搜集结合网上的资料总结了一下。
<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。大多数浏览器都支持两种模式:怪异模式和标准模式。如果未声明<!DOCTYPE>,浏览器在渲染页面的时候会使用怪异模式;各个浏览器在怪异模式下对各个元素渲染是有差异的。使用doctype,浏览器就会在标准模式下渲染。(IE6以下版本,声明doctype也工作在怪异模式下。)
HTML 4规定了三种文档类型:Strict、Transitional 以及 Frameset。写法分别是:
1.Strict:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2.Transitional
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
3.Frameset
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
Strict DTD 用于和层叠样式表CSS配合使用。如果您需要干净的标记,免于表现层的混乱,请使用此类型。
这里千万注意,如果你的CSS里面用了 margin:0 auto;使元素居中,必须使用此类型。
Transitional DTD 可包含 W3C 所期望移入样式表的呈现属性和元素。如果您的读者使用了不支持层叠样式表(CSS)的浏览器以至于您不得不使用 HTML 的呈现特性时,请使用此类型。
Frameset DTD 应当被用于带有框架的文档。除 frameset 元素取代了 body 元素之外,Frameset DTD 等同于 Transitional DTD。
XHTML 1.0 也规定了三种 XML 文档类型。 分别是Strict、Transitional 和 Frameset。具体写法如下:
1.Strict:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2.Transitional
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
3.Frameset
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
这三种写法的区别跟HTML4.0的三种写法基本相同。
HTML5的写法如下:
<!DOCTYPE html>
<!DOCTYPE html>这种写法现代的浏览器基本都支持,而且简洁明了。
我一直以为只写<!DOCTYPE html> 不指定dtd将会开启浏览器的怪异模式,这是错误的。我在IE8和FF下测试,只些<!DOCTYPE html>,不指定DTD,不进入怪异模式。IE其他版本手上没有,没有测试。也不能排除在布局的时候出现什么问题。反正现在的工具都很方便,这个东西也不用手输入。在Dreamweaver中,新建HTML的时候,可以选择文档类型。所以就不要偷懒了。
用Javascript可以取得浏览器是工作在标准模式还是怪异模式下。
mode=document.compatMode;
- 大小: 112.8 KB
分享到:
相关推荐
DOCTYPE>并不是HTML标签,它声明web浏览器关于页面使用哪个 HTML 版本进行编写的指令。 在 HTML 4.01 中,<!DOCTYPE> 声明引用 DTD,因为 HTML 4.01 基于 SGML。DTD 规定了标记语言的规则,这样浏览器才能正确地呈现...
1. **语法严格性**:XHTML的语法更严格,要求所有元素必须正确关闭(除了少数自闭合元素如`<img>`和`<br>`),而HTML则相对宽松,可以省略一些元素的结束标签。 2. **元素大小写敏感**:在XHTML中,元素和属性名是...
这个声明位于HTML文档的开头,且必须在 `<html>` 标签之前。 `<!DOCTYPE html>` 是HTML5规范中的声明方式,它表明当前文档是一个符合HTML5标准的网页。在HTML5之前,不同的DOCTYPE声明对应着不同的HTML或XHTML版本...
DOCTYPE>`标签是文档类型声明,它在HTML或XHTML文档的开头,用于告诉浏览器文档遵循的HTML或XHTML规范。这个声明非常重要,因为它会影响浏览器如何解析和渲染页面内容。`<!DOCTYPE>`标签没有闭合标签,即它不需要以`...
例如,<a>标签用于创建可点击的链接,它的href属性指定目标URL,而文字则包含在<>和</a>之间。图片标签<img>的src属性指定了图片的路径,alt属性提供了当图片无法显示时的替代文本。 HTML还支持表格(<table>)、表单...
<attribute> 以对象的形式代表了 HTML 元素的标签属性或属性。 <B> 指定文本应以粗体渲染。 <base> 指定一个显示 URL 用于解析对于外部源的链接和引用,如图像和样式表。 <baseFont> 设置渲染文本时作为缺省字体的...
DOCTYPE声明位于HTML文档的顶部,通常在`<html>`标签之前,告诉浏览器如何解析页面。 在不同的HTML版本中,DOCTYPE的声明方式有所不同,这会影响到浏览器如何呈现网页。以下是一些常见的DOCTYPE声明: 1. **HTML ...
DOCTYPE声明位于HTML文档的顶部,通常在`<html>`标签之前。 在不同的浏览器中,如果没有声明DOCTYPE,页面可能会在不同的渲染模式下显示,导致布局和样式差异。例如,Firefox(FF)和Internet Explorer(IE)在默认...
DOCTYPE html> <!-- 双标签:有头有尾,并且尾巴内会有一个关闭符:/ --> <!-- 该文档的根元素(根节点) --> <html lang="en"> <!-- 头部标签 --> <head> <!-- 单标签(也称空标签):有头没有尾,结尾会有一个...
DOCTYPE> 文档类型 <html>文档 <body>文档主体 <h1> to <h6> HTML 标题 <p>段落 <br>换行 <hr>水平线 <!--...-->注释 --文本 <b>粗体文本 <font>不赞成用。文本字体、尺寸和颜色 <i>斜体文本 <em>强调文本 <big>大...
- **主体标签**:如`<html>`、`<head>`、`<title>`、`<body>`等,构成了HTML文档的基本框架。 #### 三、HTML文档的基本结构 一个标准的HTML文档结构如下所示: ```html <!DOCTYPE html> <html> <head> <title>...
11. **语义化标签**:HTML5引入了许多新的语义化标签,如`<header>`、`<nav>`、`<main>`、`<article>`、`<section>`、`<aside>`和`<footer>`,帮助提高网页内容的可读性和可访问性。 12. **JavaScript交互**:虽然...
此外,HTML5引入了一些新的标签,如<header>、<footer>、<nav>、<article>和<section>,这些帮助提高页面的语义化,使页面结构更清晰,对搜索引擎优化(SEO)也有益。 在实际应用示例中,我们可能会看到如何使用CSS...
HTML标签是由尖括号包围的关键字,比如<html>,HTML标签通常是成对出现的,比如<b></b>,标签对中的第一个标签为开始标签,第二个标签为结束标签,开始标签和结束标签也被称为开放标签和闭合标签 HTML注释: <!–...
HTML中的`<base>`标签是一个常被忽视但十分重要的元素,它主要用来设定网页中所有链接的基础URL,以及设定默认的页面打开方式。这个标签在前端开发中扮演着简化路径处理的角色,尤其当你的网站拥有复杂的目录结构时...
HTML标签是由尖括号包围的关键词,比如<html>。 HTML标签通常是成对出现的,第一个标签是开始标签,第二个标签是结束标签。 3. 初始化项目 在WebStorm软件中,可以右键点击项目名称,选择New HTML File,命名为...
- `<table>`:创建表格,通过`<tr>`、`<td>`、`<th>`等标签构建。 - `<form>`:定义表单,用于收集用户输入的信息。 - `<input>`:用于创建各种类型的输入控件,如文本框、隐藏字段、密码框等。 - `<select>`:创建...
DOCTYPE html>`开始,接着是`<html>`标签,这是文档的根元素。`<head>`标签包含文档的元数据,如标题、样式和脚本,而`<body>`标签包含文档的内容。 HTML常用标签 * `<a>`:定义超级链接 * `<acronym>`:定义缩写...
`<acronym>` 标签用于定义首字母缩略词,与 `<abbr>` 类似,但在HTML5中已被废弃。 - **示例**:`<acronym title="Cascading Style Sheets">CSS</acronym>` —— 显示为“CSS”,当鼠标悬停时显示完整词组...
DOCTYPE html>`声明、`<html>`元素、`<head>`元素和`<body>`元素。`<!DOCTYPE html>`定义了文档类型,确保浏览器以HTML5标准解析页面。 在`<head>`部分,我们可以添加`<title>`标签来设置网页的标题,这在浏览器的...