当前位置:编程学习 > wap >>

关于XHTML MP,XHTML Basic,XHTML…

答案:

XHTML对于无线开发意味着什么?

WAP2.0将XHTML指定为下一代无线访问协议的内容编写语言。XHTML Mobile Profile是XHTML的一个子集,为各种移动设备编程提供了一种多用途的和有效的方法。用这门语言编写的内容也适合在PC环境里显示。本文会探讨XHTML Mobile Profile,将其放在更大的XHTML框架里,后者包括了XHTMLMod、XHTML Basic和WML2。

XHTML、XHTMLMod和XHTML 基础
W3C已经把XHTML 1.0定义为官方的Web标示标准,从而取代了HTML。基于HTML 4.0的XHTML其实就是就入了模块化并严格遵从XML规范的HTML 4.1。通过为不同的设备类型的Web页面提供清晰的结构,XHTML作为一个XHTML的应用程序,是移动Internet和固定Internet相集成的关键一步。你可以参考我们先前的文章,以获得更多关于XHTML的信息。

W3C所推荐XHTMLMod详细说明了XHTML的抽象模块化(abstract modularization)。它能够细分和扩展XHTML,还能让XML标准规范指定定义明确的XHTML元素集,有些类型的设备需要支持这些集合。从本质上讲,XHTML Modularization按照功能把XHTML 1.0拆分成了多个抽象模块。把这些模块结合起来就能够构成像XHTML Basic这样的XHTML子集。使用XHTMLMod,你就可以通过组合XHTML模块从而构成新的文档类型,而不再需要对基本XHTML元素的排列组合实现这一点。

XHTML Basic是移动版本的XHTML 1.0。不是所有的XHTML元素都是大量移动设备的有限显示屏、内存和处理能力所需要的,这些设备包括移动电话、PDA、传呼机和顶置盒等等。XHTML Basic利用XHTML的模块化创建了一种文件类型,这种文件类型由来自XHTML 1.0的最小模块集组成。通过将这些模块集和图像、表单、基本表格和对象支持接合起来,XHTML Basic提供了一种XHTML文档类型,不仅能够为小型设备提供足够的实现方法,而且能够为这样的(小型)设备提供丰富的内容编写方法。和WAP1.x内容编写语言WML相比而言,这样的文档类型用途会更广。

XHTML Basic几乎提供了HTML移动设备专用子集(cHTML、WML和HTML 4.0移动访问的指导原则)的所有标准特性。这些特性包括对基本文档格式化、表单、超链点、基本表格、图像和meta信息的支持。从本质上讲,XHTML Basic就是去掉了诸如框架(frame)这样能力的XHTML 1.0,对于只有有限显示能力的移动设备来说,这些框架与其相关度不是很大。其他没有被包括进XHTML Basic的XHTML 1.0重要特性还有样式元素(但是你还是可以链接到外部的样式表)、脚本元素和事件元素。而且只有基本表格和表单获得了其支持。

XHTML Mobile Profile

XHTML Mobile Profile是WAP论坛为WAP2.0所定义的内容编写语言。XHTML Mobile Profile是为不支持XHTML的全部特性且资源有限的Web客户端所设计的。它以XHTML Basic为基础,加入了一些来自XHTML 1.0的元素和属性。这些内容事实上就包括了一些其他表示元素和对内部样式表的支持。和XHTML Basic一样,XHTML Mobile Profile是严格的XHTML 1.0子集。

图A显示的是XHTML 1.0、XHTML Basic和XHTML Mobile Profile三者之间的关系。和WAP层叠样式表(WAP CSS)的结合,让XHTML Mobile Profile能够为大量支持WAP2.0的移动设备的内容表示提供了多用途的环境。

XHTML 1.0、XHTML Basic和XHTML Mobile Profile三者之间的关系

Mobile Profile规范,WAP-277-XHTMLMP-20011029-a,根据XHTMLMod 所定义的模块定义了XHTML Mobile Profile的文档类型。表A和B列出了包括进XHTML Basic里的模块和元素以及其他XHTML 1.0模块,这些都是XHTML Mobile Profile文档类型。

被包括进XHTML Mobile Profile还有其它模块和元素,以及XHTML的基本元素、XHTML Mobile Profile、WAP-277-XHTMLMP-20011029-a等。

用于XHTML Mobile Profile 的MIME媒体类型是application/vnd.wap.xhtml+xml。它应该获得应有的关注,虽然XHTML Mobile Profile文档不是一定要和application/vnd.wap.xhtml+xml媒体类型相关联。可以换用Text/html。

对于相容文档(conforming document),必须有一个带有公共标识符的DOCTYPE声明。例如:

  1. <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
  2. "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">

在媒体类型text/html被使用的时候,这个声明能够被用来辨别XHTML Mobile Profile的文档。

给XHTML Mobile Profile文档编写样式
XHTML Mobile Profile有一个主要特性没有被XHTML Basic包括进来:样式元素的使用。WAP应用程序(WAE)的用户代理能够支持支持XHTML Mobile Profile文档的样式表,这是通过支持WAP CSS(代理人)以及其他样式语言(可选)实现的。让XHTML Mobile Profile文档具有样式可以使用外部的样式表,或者使用内部的样式信息,也可以使用如下所述的内嵌样式。

和WAP CSS文档相关联

要和XHTML Mobile Profile文档的WAP CSS样式相关联,你就要使用特殊的XML处理指令或者链接元素(位于文档报头里),如下面的例子所示:

以下是代码片段:

  1. <?xml-stylesheet href=>    type="text/css" ?>

或者

  1. <head> 
  2.     <link href=>    ... 
  3.     </head>

把样式表信息嵌入到XHTML文档自身

要嵌入文档样式信息,你要使用样式元素(位于文档报头里),见下面的例子:

  1. <head> 
  2.     <style type="text/css"> 
  3.       p { text-align: center; }
  4.     </style> 
  5.     ...
  6.     </head>

让样式编写本地化
样式元素也可以被用来指明文档主体里单个元素的格式化,见下面的例子:

  1. <p style="text-align: center">...</p>

WML对XHTML Mobile Profile的扩展

XHTML Mobile Profile没有包含诸如导航帮助、上下文和“onenter”事件,后者出现在WML 1.x里。WML2是XHTML Mobile Profile和一些WML特性的组和,只要使用WML命名空间(“wml:”),这些WML特性就能在WML2里使用。但是,这个WML命名空间是可选的。其结果是大多数浏览器(Openwave除外)能够支持XHTML Mobile Profile,而不需要任何WML命名空间,还能对WML 1.x提供本地支持。

结论

通过使用改善样式控制元素从而扩展XHTML Basic,XHTML Mobile Profile提供了一种环境,这种环境对于大量移动和消费类设备而言是足够灵活和高效的。XHTML Mobile Profile是XHTML 1.0的严格子集,所以用这门语言编写的内容也会适用于PC环境的显示。

转载地址:http://bb.zhongwenxi.com/blue0net_archives_2006_7116.html

上一个:Perl在WAP网站中应用实例一谈
下一个:动态WAP站点(IIS/Apache)的服务器设置

更多图片编程知识:
更多wap疑问解答:
新人求助QPainter
为什么程序都退出了还可以收到推送?如果大多设备都可以推送那运营商怎么办?
qt 4.7 sqlserver2000 存储过程调用
关于ANDROID4.0.1编译问题!
Android FrameBuffer读屏幕30秒后mmap失败
联通粗定位用java程序如何来请求和接受数据
为什么QT运行Android平台的程序时,mouseMoveEvent事件响应的间隔时间很长??????????
android与PC蓝牙通讯
指定大小的label 内容可变,如果内容超出label的宽度,将未能显示的部分显示在另一个label上
Android调试
android如何通过wifi连接无线打印机
运行程序,release目录下产生一个乱码文件夹
分享个某机构最新安卓资料,自己验证了
service启动不起来,掉不了service connection
求助:QT5.0 没有QPrinter吗
asp
php
Delphi
Matlab
JSP
Foxpro
JS
C/C++
C#/ASP.NET
VC++
JAVA
VB
汇编语言
html/css
CGI
XML/UML
wap
网站相关
网页素材
python
微信小程序
thinkphp
如果你遇到编程学习难题:
访问www.zzzyk.com 试试
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,