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

显示内容的实现

答案:显示内容
card里可以显示象文本、图像这样的内容。象html一样,wml也提供一些标记对内容进行排版。

段落与换行标记 [top]

<p>:段落标记,用来对段落进行分段。语法:

<p
  aligh="left|right|center"
  mode="wrap|nowrap";
  xml:lang="string" >

aligh:文字对齐方式,左(left)、右(right)、居中(center)。
mode:文字超出屏幕时是否折行,各种终端处理方式不同。
xml:lang:显示语言编码。

<br>:行分隔标记,产生回车效果。语法:

<br
  xml:lang="string" />

xml:lang:显示语言编码。
段落和换行的例子:

<?xml version="1.0"?>
<!doctype wml public "-//wapforum//dtd wml 1.1//en"
 "http://www.wapforum.org/dtd/wml_1.1.xml";>

<wml>
<card title="paragraphs">
<p>
this is a paragraph
</p>
<p>
this is a another<br/>with a line break
</p>
</card>
</wml>

显示结果如下:

------ paragraphs ------
this is a paragraph
this is another
with a line break
标记 字体样式
<b> 粗体 
<big> 大字体
<em> 强调字体
<i> 斜体
<small> 小字体
<strong> 加重强调字体
<u> 下划线字体

文字样式标记 [top]
wml提供了一系列文字样式的标记,如右表所示。不过wml鼓励大家尽量使用<strong>和<em>标记,因为某些wap终端会忽略其他标记。
每个文字样式标记语法都一样,都有一个标志语言代码的xml:lang属性。
下面是一个例子:

<?xml version="1.0"?>
<!doctype wml public "-//wapforum//dtd wml 1.1//en"
  "http://www.wapforum.org/dtd/wml_1.1.xml";>

<wml>
<card title="formatting">
  <p>
   normal<br/>
   <em>emphasized</em><br/>
   <strong>strong</strong>
   <br/> <b>bold</b> <br/>
   <i>italic</i><br/>
   <u>underline</u><br/>
   <big>big</big><br/>
   <small>small</small>
  </p>
</card>
</wml>

在你的终端上可能会有这样的显示 (不过别太当真,前面说了有的终端会忽略文本样式标记):

list.asp%3fid=3

所以变量有可能需要标志为是否对其内容进行escape转换,变量定义就有如下几种特殊方式:

----- formatting -----
normal
emphasized
strong
bold
italic
underline
big
small

表格 [top]
wml支持简单的表格标记<table>、<tr>和<td>。语法如下:

<table
  align="l|r|c"
  columns="number"
  title="string"
 <tr>
  <td> 内容... </td>
  其他列...
 </tr>
  其他行...
</table>


在wml里定义一个表格必须先指定列数,即columns属性。而在表格里就必须有相应数量的<td></td>标记对。因该注意的是,align(对齐)属性的内容只能是l(左对齐)、r(右对齐)和c(居中),跟其他标记不同(是不是有点怪?)。

下面的例子演示了表格的基本功能:

<?xml version="1.0"?>
<!doctype wml public "-//wapforum//dtd wml 1.1//en"
  "http://www.wapforum.org/dtd/wml_1.1.xml";>

<wml>
<card title="salary">
<p>
<table columns="2">
<tr>
<td>name</td>
<td>payed</td>
</tr>
<tr>
<td>johnson</td>
<td>$7810.11</td>
</tr>
<tr>
<td>faye</td>
<td>$8912.00</td>
</tr>
</table>
</p>
</card>
</wml>

显示结果(注意wml里没有表格线):

------ salary ------
name     payed
johnson    $7810.11
faye     $8912.00

图像 [top]
相对于多媒体泛滥的html网站,在资源紧张的wap设备上显示图像就有点奇怪了。但是wml还是提供了图像显示的支持,毕竟一个设计精巧的图像会比一段话表达意思更清楚,或许占用空间更小。
wml支持wbmp(wireless bitmap)格式的图像,需要用特殊工具制作(下载:“资源室-〉开发工具”)。显示图像使用<img>标记,语法如下:

<img
 alt="string"
 src="string"
 align="top|middle|bottom"
 height="number"
 width="string"
 hspace="number"
 vspace="string"
 localsrc="string" />


alt: 图像无法显示时的替换文字。
src: 图像的url。
localsrc: 储存于rom(或ram)中图像的名字,各种终端支持不同。
align: 上下对齐方式。
height: 图像显示高度。
width: 图像显示宽度。
hspace: 图像左右的空白,以pixel数或百分比表示。
vspace: 图像上下的空白,以pixel数或百分比表示。

上面的属性只有alt和src是必须的。其他附加属性基本上仅仅用来指示用户终端,大多数情况下会被忽略。下面是个例子:

<?xml version="1.0"?>
<!doctype wml public "-//wapforum//dtd wml 1.1//en"
 "http://www.wapforum.org/dtd/wml_1.1.xml";>

<wml>
<card title="congratulation">

<p>
wap86, <img src="wonderful.wbmp" alt="wonderful"/>!
</p>

</card>
</wml>

上一个:WAP2.0移动互联
下一个:JSP制作WAP网站时中文字符问题的一些解决办法

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