使用Web标准建站第1天:选择什么样的DOCTYPE

原创 2005年03月03日 18:33:00

出处:网页设计师 作者:阿捷

大家好!这个系列文章是按阿捷自己制作这个站点的过程编写的。之前阿捷也一直没有制作过一个真正符合web标准的网站。现在边参考国外资料边制作,同时把过程中的心得和经验记录下来,希望对大家有点帮助。好了,让我们开始吧

  第一天

  开始制作符合标准的站点,第一件事情就是声明符合自己需要的DOCTYPE。

  查看本站首页原代码,可以看到第一行就是:

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

  打开一些符合标准的站点,例如著名web设计软件开发商Macromedia,设计大师Zeldman的个人网站,会发现同样的代码。而另一些符合标准的站点(例如k10k.net)的代码则如下:

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

  那么这些代码有什么含义?一定要放置吗?

  什么是DOCTYPE

  上面这些代码我们称做DOCTYPE声明。DOCTYPE是document type(文档类型)的简写,用来说明你用的XHTML或者HTML是什么版本。

  其中的DTD(例如上例中的xhtml1-transitional.dtd)叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。

  要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。

  XHTML 1.0 提供了三种DTD声明可供选择:

  过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法)。完整代码如下:

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

  严格的(Strict):要求严格的DTD,你不能使用任何表现层的标识和属性,例如<br>。完整代码如下:

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

  框架的(Frameset):专门针对框架页面设计使用的DTD,如果你的页面中包含有框架,需要采用这种DTD。完整代码如下:

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

  我们选择什么样的DOCTYPE

   理想情况当然是严格的DTD,但对于我们大多数刚接触web标准的设计师来说,过渡的DTD(XHTML 1.0 Transitional)是目前理想选择(包括本站,使用的也是过渡型DTD)。因为这种DTD还允许我们使用表现层的标识、元素和属性,也比较容易通过W3C的代码校验。

  注:上面说的"表现层的标识、属性"是指那些纯粹用来控制表现的tag,例如用于排版的表格、背景颜色标识等。在XHTML中标识是用来表示结构的,而不是用来实现表现形式,我们过渡的目的是最终实现数据和表现相分离。

  打个比方:人体模特换衣服。模特就好比数据,衣服则是表现形式,模特和衣服是分离的,这样你就可以随意换衣服。而原来HTML4中,数据和表现是混杂在一起的,要一次性换个表现形式非常困难。呵呵,有点抽象了,这个概念需要我们在应用过程中逐步领会。

  补充

  DOCTYPE声明必须放在每一个XHTML文档最顶部,在所有代码和标识之上。

  更多细节可以访问W3C的网站


第1天:选择什么样的DOCTYPE

前言 大家好!这个系列文章是按阿捷自己制作这个站点的过程编写的。之前阿捷也一直没有制作过一个真正符合web标准的网站。现在边参考国外资料边制作,同时把过程中的心得和经验记录下来,希望对大家有点帮助。...
  • wuha0
  • wuha0
  • 2012年03月15日 10:24
  • 263

浏览器兼容:Web标准化建站(DIV+CSS)的常见问题解决方法

经常我们用DIV+CSS建站的时候,发现在IE6,IE7,Firefox里面显示经常一塌糊涂,而在外贸网站建设中,因为浏览着对象是国外,Firefox的市场份额很大,为了让我们的客户能看到一个完美专业...

Web建站基本概念

首先要知道网站访问大概是什么个过程: 假设你在浏览器地址栏输入这个问题的地址 http://www.zhihu.com/question/22689579 访问过程和下图差不多,浏览器...

ecshop建站问题:Strict Standards: Redefining already defined constructor for class alipay in /data/web/in

今天小编在使用ecshop建站的时候遇到了一个问题,报错提示: Strict Standards: Redefining already defined constructor for class ...
  • fjnjxr
  • fjnjxr
  • 2016年09月02日 11:17
  • 2508

浅谈Web建站技术

互联网是指通过TCP/IP协议族互相连接在一起的计算机网络。万维网和互联网是两个联系极其紧密但却不尽相同的概念。 Web是运行在互联网上的一个超大规模的分布式系统: (1)通过超文本标记语言(HTML...

【Web建站】Windows10下Apache2.4配置Django

以前用Python运行的Web框架都是要运行在Linux下,加上WSGI服务器,比如Gunicorn+Flask,后来了解到了Apache,看看能不能基于Apache这个Web服务器下给Python提...

移动新闻--移动建站工具:分秒钟将Web网站移动化

摘自:http://www.csdn.net/article/2013-09-05/2816837-mobile-site-builders-one-W-to-M 摘要:时下移动端显然已是诸多...

<!DOCTYPE> 标签的深度剖析以及使用选择

的定义:      声明位于文档中的最前面的位置,处于标签之前。此标签可告知浏览器文档使用哪种HTML或XHTML规范。 该标签可声明三种DTD类型,分别表示严格版本、过渡版本以及基于框架...

使用CSS时的DOCTYPE选择

语法: HTML  顶级元素  可用性 "注册//组织//类型 标签//定义  语言""URL" 可能值: - 顶级元素:指定 DTD 中声明的顶级元素类型。这与声明的 SGML 文档类型相...

HTML doctype使用选择

的定义:声明位于文档中的最前面的位置,处于标签之前。此标签可告知浏览器文档使用哪种HTML或XHTML规范。该标签可声明三种DTD类型,分别表示严格版本、过渡版本以及基于框架的HTML版本。(假如文档...
  • ty_hf
  • ty_hf
  • 2015年08月30日 08:25
  • 648
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用Web标准建站第1天:选择什么样的DOCTYPE
举报原因:
原因补充:

(最多只允许输入30个字)