codecamp

XHTML 版本1.1

W3C帮助将互联网内容开发社区从畸形的,非标准的标记转变为XML格式良好的有效世界。在XHTML 1.0中,这一举措主要是为了将现有的基于HTML 4(或更早版本)的内容轻松地迁移到XHTML和XML中。

W3C已经取消了对XHTML系列中已弃用的元素和属性的支持。这些元素和属性主要具有面向表达的功能,通过样式表或特定于客户端的默认行为可以更好地处理这些功能。

现在,W3C的HTML工作组已经定义了一个基于XHTML 1.1模块的初始文档类型。这种文档类型被设计为可移植到广泛的客户端设备集合,并适用于大多数的互联网内容。


文件一致性

XHTML 1.1提供严格符合XHTML文档的定义,它们必须满足以下所有条件 -

  • 文档必须符合在XHTML 1.1文档类型定义中表达的约束。
  • 文档的根元素必须是<html>。
  • 文档的根元素必须使用xmlns属性指定XHTML名称空间。
  • 根元素也可以包含XML模式中定义的模式位置属性。

在根元素之前的文档中必须有DOCTYPE声明。如果存在,DOCTYPE声明中包含的公共标识必须引用在XHTML 1.1文档类型定义中找到的DTD。

这里是一个XHTML 1.1文档的例子:

<?xml version="1.0" encoding="UTF-8"?>

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

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd" xml:lang="en">
	
   <head>
      <title>W3Cschool-这是一个文档标题</title>
   </head>
	
   <body>
      <p>跳转到 <a href="https://www.w3cschool.cn/">W3Cschool</a>。</p>
</body> </html>

注 - 在这个例子中,包含了XML声明。所有XML文档中都不需要XML声明,如上所述。强烈建议XHTML文档作者在其所有文档中使用XML声明。如果文档的字符编码不是默认的UTF-8或UTF-16,则需要此类声明。


XHTML 1.1模块

XHTML 1.1文档类型由以下XHTML模块组成。

  • 结构模块 - 结构模块定义了XHTML的主要结构元素。这些元素有效地作为许多XHTML家族文档类型的内容模型的基础。包含在这个模块中的元素和属性是 - body,head,html和title。
  • 文本模块 - 这个模块定义了所有的基本文本容器元素,属性及其内容模型 - 缩写,缩写,地址,块引用,引用,代码,dfn,div,em,h1,h2,h3,h4,h5 ,h6,kbd,p,pre,q,samp,span,strong和var。
  • 超文本模块 - 超文本模块提供用于定义到其他资源的超文本链接的元素。该模块支持元素a。
  • 列表模块 - 顾名思义,列表模块提供了列表导向的元素。具体来说,列表模块支持以下元素和属性 - dl,dt,dd,ol,ul和li。
  • 对象模块 - 对象模块提供通用对象包含的元素。具体来说,对象模块支持 - 对象和参数。
  • 演示模块 - 这个模块定义了简单的演示相关标记的元素,属性和最小内容模型 - b,big,hr,i,small,sub,sup和tt。
  • 编辑模块 - 此模块定义用于编辑相关标记的元素和属性 - del和ins。
  • 双向文本模块 - 双向文本模块定义了一个元素,可用于声明元素内容的双向规则 - bdo。
  • 表单模块 - 它提供了HTML 4.0中的所有表单功能。具体来说,它支持 - 按钮,字段集,表单,输入,标签,图例,选择,optgroup,选项和textarea。
  • 表模块 - 支持以下元素,属性和内容模型 - 标题,列,colgroup,表,tbody,td,tfoot,th,thead和tr。
  • 图像模块 - 它提供了基本的图像嵌入功能,可以在客户端图像地图的一些实现中独立使用。它支持元素 - img。
  • 客户端图像映射模块 - 为客户端图像映射提供元素 - 区域和地图。
  • 服务器端图像映射模块 - 提供图像选择和选择坐标传输的支持。服务器端图像映射模块支持img上的属性ismap。
  • 内部事件模块 - 它支持在XHTML事件中讨论的所有事件。
  • 元信息模块 - 元信息模块定义了描述文档声明部分信息的元素。它包括元素元。
  • 脚本模块 - 它定义了用于包含与可执行脚本有关的信息的元素,或者缺少对可执行脚本的支持。包含在这个模块中的元素和属性是 - 脚本和脚本。
  • 样式表模块 - 它定义了在声明内部样式表时使用的元素。这个模块定义的元素和属性是 - style。
  • 样式属性模块(已弃用) - 定义样式属性。
  • 链接模块 - 它定义了一个可用于定义到外部资源的链接的元素。它支持链接元素。
  • 基本模块 - 它定义了一个元素,可以用来定义一个基本的URI,文档中的相对URI被解析。包含在这个模块中的元素和属性是 - base。
  • Ruby Annotation Module - XHTML也使用Ruby中定义的Ruby Annotation模块,支持ruby,rbc,rtc,rb,rt和rp。


XHTML 1.0 Strict的变化

本节介绍XHTML 1.1和XHTML 1.0 Strict之间的区别。XHTML 1.1代表了HTML 4和XHTML 1.0的背离。

  • 最重要的是删除已弃用的功能。
  • 这些变化可以总结如下 -
  • 在每个元素上,lang属性已经被移除,以支持xml:lang属性。
  • 在<a>和<map>元素上,名称属性已被删除,以支持id属性。
  • 元素的红宝石集合已被添加。


XHTML 事件属性
XHTML 提示和技巧
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

XHTML 测验

XHTML 参考手册

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }