你好!
这是一个整理我在学习 HTML5 过程中所学知识的空间。提前说明,这里不会对特定功能进行深入探讨。
DTD (Document Type Definition)
这是 Document Type Definition 的缩写。DTD 是一种文本文件,用于描述哪些标签、属性和值在特定的 HTML 文档中是有效的。据说每个 HTML 版本都有对应的 DTD。通常我们会在 HTML 文档的第一行通过 doctype 声明来定义它,以此告知浏览器使用了哪个版本的 HTML 或 XHTML。 如果漏掉这种 doctype 声明,大多数浏览器会进入一种被称为“怪异模式 (Quirks Mode)”的状态。
当浏览器遇到没有 doctype 声明的页面时,它会认为:“噢,这个页面是非常久远以前写的。”并得出“那就随便显示吧”的结论。
如果自己制作的网页在浏览器中显示效果与预期不符,检查一下 doctype 声明是很有必要的。
以下是各版本的 doctype 声明:
HTML5
<!doctype html>
HTML4
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
XHTML 1.0
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 1.010 Transitional//EN" "http://www.w3.org/TR/html1/DTD /xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
应对 IE9 及以下版本的指南
1. 如果想让 IE8 理解 HTML5:
在 </head> 标签前插入以下代码即可。
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
通过使用条件注释,只有比 IE9 更老的 IE 版本(即 IE 6、7、8)能够理解并应用这段代码。神奇的是经过测试,在 Chrome 中该脚本不会被加载,看来它能够专门识别 IE。
2. 如何避开 IE8 的“兼容性视图”及“兼容性视图列表”:
请将以下代码放入 <head> 中:
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
...
</head>
在 HTML 代码中连接外部样式表
将外部样式表连接到网页的方法是使用 <link> 标签。
以下是各版本的使用方式:
HTML5
<link rel="stylesheet" href="css/styles.css">
HTML4
<link rel="stylesheet" type="text/css" href = "css/styles.css" >
XHTML 1.0
<link rel="stylesheet" type="text/css" href="css/styles.css" />