<!DOCTYPE>的作用和使用

当您打开网易,新浪等网站的任何一个页面的源码时,第一行都会看到<!DOCTYPE....dtd>,很多人不明白这段话什么意思,有什么作用。而在自己做项目的时候根本不在乎<!DOCTYPE>,甚至特意删除<!DOCTYPE>,这里特别提醒您:[b]您删除<!DOCTYPE>的时刻,正是灾难开始发生的时刻。[/b]

<!DOCTYPE>在遵循标准的任何Web文档中,它都是一项必需的元素。<!DOCTYPE>会影响代码验证,并决定了浏览器最终如何显示你的Web文档。现在您明白了吧,[b]当你删除了<!DOCTYPE>时,就是把如何展示您html页面的权利给浏览器![/b]很恐怖吧,IE6,IE7,IE8,Firefox2,Firefox3,Chrome,有多少种浏览器,您的页面可能就会产生多少种展示方式。

如果您的页面根本就没有<!DOCTYPE>,那么您考虑浏览器的兼容性,就是缘木求鱼,[b]提高页面的兼容性从重视<!DOCTYPE>开始[/b]。

能够见到的<!DOCTYPE>有以下这几种:

HTML 2
<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
HTML 3.2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
HTML 4.01 Strict, Transitional, Frameset
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
XHTML 1.0 Strict, Transitional, Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1 xhtml1.1,XHTML 1.1 plus MathML 2.0 plus SVG 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd">

我们常用的有:
[code]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
[/code]
[code]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
[/code]

[b]xhtml1-strict[/b]:声明文档中不使用任何失效属性以及框架
[b]loose[/b]:声明文档使用一些失效元素包括显示
[b]xhtml1-transitional[/b]:声明文档使用一些失效元素并且使用框架

建议您的页面都是用strict声明,这样可以最大限度的提高页面的兼容性,不过这样可能会造成您在编写html程序时必须非常严格。只有当strict声明太严格,给您编码和实现造成了困难,您可以使用transitional声明,否则坚持使用strict。

最后再次声明:
[b]您删除<!DOCTYPE>的时刻,正是灾难开始发生的时刻。提高页面的兼容性从认识<!DOCTYPE>开始[/b]

文章地址:[url]http://javapub.iteye.com/blog/736640[/url]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值