《HTML5和CSS3快速参考》——2.2 XHTML5

2.2 XHTML5

支持多种语言的HTML文档
在多语言环境下,HTML文档既是一份有效的HTML文档,也是一份有效的XHTML文档。

  • 在多语言环境下,HTML文档同时遵守HTML和XHTML的语法规则,即它所采用的语法是HTML和XHTML语法的交集。
  • 一份多语言文档能同时提供HTML和XHTML两种服务,具体取决于浏览器的支持及其MIME类型。
  • 至于是否要在HTML中选择多语言环境,则取决于具体的项目需求、浏览器的支持以及其他可能的影响。
<!--HTML4, HTML5 syntax-->
<input disabled>
<input disabled=disabled>
<!--XHTML 1.0 syntax-->
<input disabled=“disabled” />
<!--HTML4, HTML5, XHTML 1.0
conforming Polyglot syntax-->
<input disabled=“disabled” />

XHTML5中的定义操作
一份多语言版的HTML5代码基本上等同于一份XHTML文档(只要提供相应的XML MIME类型[application/xhtml+xml]即可)。总而言之,在多语言环境的HTML5文档中:

应声明HTML5 DOCTYPE/namespace。尽管HTML5已经不再需要进行DTD(Document Type Definition)了(因为其格式已经不再基于SGML了),但对于DOCTYPE,我们依然得保留一定的向后兼容性。

应具有更良好的XHTML语法。

尽管多语言版的HTML文档同时提供了HTML和XHTML两种服务,但其实际运作仍需取决于浏览器的支持以及其自身的MIME类型。单纯就理论而言,一份支持多语言的HTML5代码基本就等同于一份XHTML5文档(只要它声明了XML MIME类型:application/xhtml+xml)。总体上,对于XHTML5文档而言:

  • 如果默认编码是UTF-8的话,其XML声明(<?xml version=”1.0” encoding=”UTF-8”?>)就不是必须的。
  • 其HTML DOCTYPE,即声明也是可选的。但它在多语言版的HTML或XHTML文档中均可使用。
  • 应具有更良好的XHTML语法。
  • 应声明其XML MIME类型:application/xhtml+xml。此MIME声明在源代码中是不可见的,但它在配置浏览器处理相关HTTP头Content-Type信息时有着非常重要的作用。尽管XML MIME类型还不为IE浏览器的当前版本所支持,但该浏览器依然是可以解析XHTML文档的。
  • XHTML的默认命名空间为 xmlns=”

http://www.w3.org/1999/xhtml”>。另外,文档还支持某些辅助命名空间,如SVG、MathML、Xlink等。对我来说,这些是测试所需的,但如果你的文档中不需要用到这些命名空间,那么使用XHTML就有些杀鸡用牛刀的感觉了。当然,无论你选择的是HTML还是XHTML,本质上还是其媒体类型所决定的。
最终,一份基本的HTML5文档看上去应该是这个样子:

在这里,XML声明<?xml verstion="1.0" encoding="UTF-8" ?>并不是必须的。只要我们的默认编码是UTF-8,XHTML验证器不会在意它被忽略。

但是,我们还是强烈建议你在服务器端用HTTP Context-Type头信息来配置文档的编码,否则字符编码可能就会由每个文档自身的某一部分来决定(meta标签:)。

而这种编码声明本身就需要在一份多语言版的文档中进行。因此,如果该文档要同时适用于HTML和XHTML两种服务,编码也就默认为UTF-8。

<!DOCTYPE html>
<html xmlns=“http://www.w3.org/1999/xhtml”>
<head>
  <title></title>
  <meta charset=“UTF-8” />
</head>
<body>
  <svg xmlns=“http://www.w3.org/2000/svg”>
  <rect stroke=“black” fill=”blue”
x=“45px” y=“45px” width=“200px”

另外,我们还可以通过Total Validator工具(包括Firefox插件版和桌面版)对当前用户选中的项目进行XHTML5规则验证。

height=“100px” stroke-width=“2”/>
  </svg>
</body>
</html>

XHTML5的主要作用是对HTML5进行扩展,使其能运用SVG、MathML这类基于XML的技术。尽管HTML5规则已经支持了SVG和MathML这些内联技术,但目前浏览器对它们的实际支持是相当有限的。事实上,这项技术的缺点也正是它在IE上缺少足够的支持,以及其在代码要求和错误处理方面也更为烦琐。因此除非我们真的需要这些扩展,否则HTML5就已经足够了。

归根结底,HTML5与XHTML5之间的选择实际上已经落在了MIME/content类型上面,我们对于文档类型的决定已经和XHTML1 vs. HTML4时代不一样了,XHTML5 vs. HTML5时代选择本质上将取决于MIME类型,而不是DOCTYPE。

时间: 2024-09-29 21:08:00

《HTML5和CSS3快速参考》——2.2 XHTML5的相关文章

《HTML5和CSS3快速参考》——导读

内容提要 对于Web开发者来说,HTML5和CSS3无疑是最重要.最基本的两种语言.HTML5被认为是Web的未来,而CSS3进一步保证了在模块发布方面的灵活性. 本书是为专业Web设计人员及开发人员量身打造的一本快速参考.全书浓缩了近3000多页的(X)HTML5和CSS3的标准规范,涵盖了那些最基本的通用概念和规范,包括标签.属性.属性值.对象及其属性与方法.事件,以及一系列API.本书力图以简明易读.结构清晰的方式,为读者提供全面的.一站式的参考信息. 对HTML5和CSS3技术感兴趣的读

《HTML5和CSS3快速参考》——第1章 走进HTML51.1 概述

第1章 走进HTML5 1.1 概述 本书简介 在Web世界中,HTML和CSS无疑是最重要.最基本的两种语言了,它们一同支撑起了当下绝大部分的Web站点和Web应用程序.而最新的HTML5被认为是Web的未来,它为我们提供了一系列简单的富互联网应用服务(Rich Internet Application)1插件功能,以及更容易的开发方式和更好的用户体验. 今天,我们总能在网络上找到各种关于HTML5的参考资料.教程及相关技巧,其中也不乏一些重点讨论HTML5某些具体特性的书籍.但我们总会觉得缺

《HTML5和CSS3快速参考》——2.4 语法摘要

2.4 语法摘要 一般语法规则 (X)HTML5中的空标签语法 空标签没有闭标签(也叫结束标签),例如< input > 图像说明文字. 在HTML5中,空元素中的终止斜线不是必须的,例如< input >. 在XHTML5中,空元素中的终止斜线是必须的,例如< input />. 具有可选标签的HTML5元素 可选标签并不适用于XHTML5元素. 当可选标签满足(下表)"省略条件"列中列出的条件时: 通常情况下,只要其中有一个条件被满足,该标签就可

《HTML5和CSS3快速参考》——1.2使用HTML5的理由

1.2使用HTML5的理由 HTML5的优势 向后兼容能力:HTML5内封装了之前所有版本的文档类型. 更简单的语法:语义更为完善,编码更为高效,文档也更为小型化. 新元素及其属性使得我们的设计与开发工作变得更为灵活. 拥有视频与音频插件,支持媒体定时播放功能. 拥有更智能化的Web Forms 2.0功能(HTML5将取代Web Forms 2.0). 能在单行中内嵌SVG和MathML等支持text/htmlMIME类型的数据. 拥有20多个新型脚本API(Application Progr

《HTML5和CSS3快速参考》——1.3HTML5的品牌化

1.3HTML5的品牌化 2011年1月18日,W3C推出了HTML5视觉品牌,即它的logo以及涉及现代化网站和Web应用程序方方面面的各项技术类图标.这些logo.图标和网站都在知识共享署名协议3.0下获得了授权. 如果有相关网站或应用程序在构建过程中使用了HTML5技术,W3C鼓励视觉品牌来明示产品对这项技术的支持. Logo 当然,有了HTML5的logo并不能保证相关代码的有效性和延续性. 技术类图标 语义元素 语义元素,即相关结构元素所代表的含义,是HTML5技术的前沿与核心.它包括

《HTML5和CSS3快速参考》——第2章 HTML语法2.1HTML文档

第2章 HTML语法 2.1HTML文档 基本概念 通常情况下,HTML文档指的是一份独立的HTML文件. HTML文档是一份由一定的元素和文本组成的代码文件. HTML文件的基本构件是元素(element).它们以HTML标签的形式呈现. 这些元素构成了一个层次分明的嵌套结构. 元素与标签 通常情况下,元素是由一个开标签(opening tag,如本例中的 )和一个闭标签(closing tag,如)组成的,但有时候闭标签不是必须的. 元素与标签之间的不同在于,元素是HTML标签所要表述的概念

《HTML5和CSS3快速参考》——2.3 文档的类型与结构

2.3 文档的类型与结构 MIME类型"MIME"是Multipurpose Internet Mail Extensions1的缩写形式,有时也被称为互联网媒体类型(Internet Media Type)或内容类型(Context Type).它的作用与文件扩展名有些类似,主要用于识别信息类型.它至少由两部分组成:一个type和一个subtype,有时还会附带一些可选参数2. <!DOCTYPE html> <head> <title>HTML5

【实战HTML5与CSS3 第二篇】绚丽的快速导航!

原文 http://www.cnblogs.com/yexiaochai/archive/2013/05/01/3051632.html 目录 [实战HTML5与CSS3 第一篇]初探水深,美丽的导航,绚丽的图片爆炸!! [实战HTML5与CSS3 第二篇]绚丽的快速导航! [实战HTML5与CSS3 第三篇]我第一个HTML5网页诞生了(提供源码) 前言 今天9点就起来了,因为下午出去有个聚会,所以就早点起来进行,否则这个进度有点吃紧啊,昨天初略的完成了导航以及爆炸的图片,这里来回顾下: 1

分享最好的HTML5编码教程和参考手册

原文:http://www.gbin1.com/technology/html/20101019bestreferencesandtutorialstostartcodingwithhtml5/index.html 原文:queness.com         编译:GBin1.com 今天我们介绍相关HTML5的参考手册,演讲稿,电子书和教程. HTML5是新兴的web技术,虽然不是完全的新技术但是已经有很多的相关文章介绍HTML5,特别是当我们谈论HTML5将成为Flash的替代品.现代浏览