标签的定义与使用

标签的定义   

    

   声明位于文档中最前面的位置,处于标签之前。 声明不是一个HTML标签,它是告知Web浏览器该页面使用了哪种HTML版本(规范),浏览器用此版本(规范)对该文档进行解析,渲染
        可声明的 DTD 有三种:分别是严格版本(strict)过渡版本(transitional)、以及基于框架的版本(frameset),若文档不遵循其DTD规范,则此文档中的代码不但不能通过代码校验,并且有可能无法正常显示。

 

 1 DOCTYPE html>
 2 <html>
 3     <head>
 4         
 5         <meta charset="utf-8"> 
 6         <title>文档标题title>
 7     head> 
 8     <body>
 9         文档内容......
10     body>
11 html>

 

 

标签的使用

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

 

  在以上声明中,此文档的根元素被声明为HTML,他在公共标识符被定义为 “-//W3C//DTD HTML 4.01//EN” 的DTD中进行了定义,浏览器会明白如何寻找与该公共标识符匹配的DTD,如果找不到,浏览器将会使用公共标识符后面的 URL 来寻找DTD的位置。

  -/+:"-“表示组织名称未注册,Internet 工程任务组(IETF)和万维网协会(W3C)并非注册的 ISO 组织,”+"表示组织名称已注册;
  DTD:指公开文本类,即所用的对象类型。默认为DTD;
  HTML:公开文本描述,即对所引用的公开文本的唯一描述性名称。后面可附带版本号。默认为HTML;
  URL: 指定所引用对象的位置。
 

 

HTML的文档类型

HTML4.01 的文档类型

HTML 4.01 规定了三种文档类型:StrictTransitional 以及 Frameset

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

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


  过渡版本(transitional) 的DTD 包含所有 HTML 元素和属性,包括表象或过时的元素(eg:font ),框架集是不允许的。

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


  基于框架的版本(frameset) 的DTD 与 HTML 4.01 Transitional 相同,但是允许使用框架集内容。

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

 

HTML5 的文档类型

HTML4.01 中的DOCTYPE需要对 DTD 进行引用,因为 HTML4.01 基于 SGML。而 HTML5 不基于SGML,因此不需要对 DTD 进行引用,但是需要DOCTYPE来规范浏览器的行为(让浏览器按照它们应该的方式来运行)。

1 DOCTYPE html>

 

XHTML1.0 的文档类型

XHTML 1.0 规定了三种文档类型:StrictTransitional 以及 Frameset

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

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


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

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


  基于框架的版本(frameset) 的DTD 与 XHTML 1.0 Transitional 相同,但是允许使用框架集内容。

1 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 支持)。

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

 

 

三种类型文档的区别

       严格版本:
              它将文档结构与表现形式实现了更高的分离,所以,页面的外观要用CSS来控制。

       过渡版本:
              它包含了HTML4.01版本的全部标记,方便网页开发者顺利地从HTML的使用过渡到XHTML

       基于框架的版本:
              它使用以框架的形式将网页分为多个文档。W3C是推荐使用XHTML的,而且使用XHTML的话可以更顺利地通过W3C对网页页面的验证

 

 

注意

       1. 页面引用哪种规范就要用那种规范允许或推荐使用的标签。

       2. 如果没有指定有效的DOCTYPE声明,大多数浏览器都会使用一个内建的默认dtd。在这种情况下, 浏览器会用内建的dtd来试着显示你所指定的标记,这将违背HTML规范的意义,不建议使用这种方式。

       3. 当doctype申明缺失或者格式不正确时,文档会以兼容模式呈现。
           标准模式:排版以及js运行模式都是以浏览器支持的最高标准运行;
           兼容模式:页面以宽松的向后兼容(向老版本兼容)方式显示,模拟老浏览器的行为防止(老)站点无法正常工作。

 

 

其他

        是 HTML5 中唯一的 DOCTYPE,也被视作将网页 “升级” 到 HTML5 的第一步。很多国外网站的之间都会有一段注释,如:

1 
2 
3 
4 
5 

 

       该代码作用于 css,来写一些针对IE各版本的样式差异。先判断用户用的哪个 IE 版本,然后在标签上加上该版本的 class,这样可以方便 hack。
css 文件是这样写的:

1 .ie6 xxx {};
2 .ie7 xxx {};

       这是目前最好的 hack 方式之一。

你可能感兴趣的:( 标签的定义与使用)