<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-88  評(píng)論-77  文章-48  trackbacks-0
    元素和標(biāo)簽是WML的主要語法,它們決定了WML編程的基本原則。本章我們將從WML的元素、標(biāo)簽、屬性等方面詳細(xì)講解WML的編程方法。學(xué)習(xí)本章知識(shí)之前,讀者應(yīng)當(dāng)了解WML元素與標(biāo)簽的區(qū)別。WML的元素通常有一個(gè)首標(biāo)簽、內(nèi)容、其它元素及一個(gè)尾標(biāo)簽組成。也就說,單獨(dú)的標(biāo)簽是一個(gè)元素,成對(duì)出現(xiàn)的標(biāo)簽與其包含的內(nèi)容也構(gòu)成一個(gè)元素。由于元素牽涉及標(biāo)簽,標(biāo)簽又涉及屬性。?
    3.1?卡片、卡片組及其屬性

    我們前面介紹了WML的卡片與卡片組,主要從概念和相互關(guān)系的角度進(jìn)行了分析。我們這里則從卡片、卡片組的組成、相關(guān)元素、標(biāo)簽技術(shù)性等編程角度進(jìn)行分析和講解。?3.1.1?共有屬性

    WML元素的共有屬性主要有3個(gè):id、class和xml:lang屬性。

    WML的所有元素都有兩個(gè)核心屬性,即標(biāo)示(id)和類(class)屬性。它們主要用于服務(wù)器方的信息傳輸。其中,id屬性用于定義元素在卡片組中的唯一標(biāo)示,即它的名稱;class屬性用于給當(dāng)前元素定義一個(gè)或更多的類(class)。與卡片組一樣,類(class)也是有名字的,而且多個(gè)元素可以使用一個(gè)類(class)名。具有相同類名的單一卡片組中的所有元素均可被看作相同類的一個(gè)部分。類名是區(qū)分大小寫的。如果在class屬性列表中,一個(gè)元素多個(gè)唯一的類名,那么該元素可以看作這些類中的一部分。具有同一屬性的多個(gè)類名必須用兩個(gè)以上的空格間隔,WML程序執(zhí)行時(shí)將忽視其中多余的類名及其屬性。

    另外,在WML程序,所有包含文本的元素均具有“xml:lang”屬性。該屬性用于指定當(dāng)前元素及其屬性所用的描述語言,如英國(guó)英語、美國(guó)英語、法語、德語等,并可以為用戶瀏覽器選擇顯示文本的語言提供依據(jù)。

    3.1.2?WML程序的文件頭

    合法的WML卡片組均屬合法的WML文件,因此它必須包含WML的聲明及文件類型的聲明。典型的WML程序的文件頭包括我們前面多次提到的以下兩行程序:

    <?xml?version=\"1.0\"?>
    <!DOCTYPE?wml?PUBLIC?\"-//wapforun//DTD?WML?1.1//EN\"?\"http://www.wapforum.org/DTD/wml_1.1.xml\">

    編寫WML程序時(shí),我們必須寫入這兩行程序,并放在程序的開始處。其中\(zhòng)"-//wapforun//DTD?WML?1.1//EN\"是標(biāo)準(zhǔn)通用標(biāo)記語言SGML的公共標(biāo)示;\"http://www.wapforum.org/DTD/wml_1.1.xml\"是WML程序文檔類型的標(biāo)示。文檔類型標(biāo)示也可以是\"text/vnd.wap.wml\"或“application/vnd.wap.wmlc”,其中前者制定WML的原文類型,后者貧╓ML程序編譯后代碼類型。

    3.1.3?WML元素

    WML的WML元素用于定義一個(gè)卡片組,并通過<wml>與</wml>標(biāo)簽包含和封裝該卡片組中的所有卡片及信息。它的語法格式如下:

    <wml?xml:lang=\"lang\">
    內(nèi)容(content)
    </wml>

    其中xml:lang=\"lang\"用于指定文檔所用語言(前面已有介紹),語言\"lang\"的值屬于NMTOKEN型數(shù)據(jù)。

    wml元素中包含的內(nèi)容(content)中除了文本、圖像等信息之外,還可以包含head、template及card元素。其中head、template元素如果包含的話則只可包含一次,而card元素必須至少包含一次。有關(guān)這些元素的用法我們后面介紹。

    3.1.4?template元素

    template元素用于為當(dāng)前卡片組中的所有卡片定義一個(gè)模板,同一規(guī)定卡片的某些參數(shù)。模版中的事件處理功能則可將這些參數(shù)自動(dòng)應(yīng)用于同一卡片組中的所有卡片。不過,我們也可以是其中某個(gè)或某幾個(gè)卡片不采用模板規(guī)定的形式,方法是在該卡片中定義一個(gè)同名的事件來替代模板塊中相應(yīng)的事件。template元素通過<template>和</template>標(biāo)簽含所需內(nèi)容(content)而實(shí)現(xiàn)模板功能的,其語法格式如下:

    <template?oneterforward=\"href\"?onenterbackwared=\"href\"?ontimer=\"href\">
    內(nèi)容(content)
    </template>

    template元素包含的內(nèi)容中,除了卡片的一般參數(shù)外,還可以包含任意多次的do元素和onevent元素。template元素屬性的功能及用法說明如下:

    1)oneterforward。當(dāng)用戶在瀏覽器中進(jìn)入當(dāng)前卡片時(shí),該屬性將指定超鏈(href)的URL地址,瀏覽器將據(jù)此打開URL指定的卡片或事件。

    2)oneterbackward。與上一屬性類似,該屬性也可以指定其相應(yīng)卡片或事件的URL地址。如果用戶瀏覽時(shí)執(zhí)行prev任務(wù),那么瀏覽器就會(huì)定位到該屬性所指定超鏈(href)的URL地址,并打開URL指定的卡片或事件。

    3)ontimer。當(dāng)指定時(shí)間timer過期的時(shí)候,用戶瀏覽器就根據(jù)ontimer屬性指定的URL打開相應(yīng)的卡片。

    3.1.5?card元素

    WML的卡片組是由一個(gè)或多個(gè)卡片(card)構(gòu)成的,每個(gè)卡片都包含有一套用戶和瀏覽器交互操作的配置及模式。用戶對(duì)交互操作的需求是多樣性的,所以卡片定義時(shí)也必須是多樣性的。為此,WML提供了card元素,通過<card>和</card>標(biāo)簽定義一個(gè)卡片的各種屬性、包含內(nèi)容。它的語法格式如下:

    <card?id=\"name\"?title=\"label\"?newcontext=\"boolean\"?ordered=\"true\"?onenterforward=\"href\"?onenterbackward=\"href\"?ontimer=\"href\">
    內(nèi)容(content)
    </card>

    card元素中包含的內(nèi)容(content)中除了文本、圖像信息之外,還可以包含onevent、timer、do和p元素。其中,timer元素只可使用一次,其余3種可使用多次。而且,如果card元素包含onevent元素或timer元素的話,那么onevent元素必須放在最前面,timer元素放在onevent元素的后面,隨后才可以使用do或p元素。這個(gè)優(yōu)先順序是不能亂的。

    card元素屬性的功能及用法介紹如下:

    1)id。用于指定card的名字。改名字是程序?qū)Ш蕉ㄎ坏囊罁?jù),可以用作程序段錨點(diǎn),比如<go?href=\"#cardname\"/>。其中的cardname便是由id指定的卡片名。

    2)title。用于為卡片制訂一個(gè)簡(jiǎn)單的標(biāo)題或說明信息。

    3)newcontext。用于指定WAP手機(jī)瀏覽當(dāng)用戶重新進(jìn)入的時(shí)候是否需要初始化卡片中所有的內(nèi)容。它有true和false兩種選擇,當(dāng)指定newcontext=\"ture\"時(shí),卡片的所有內(nèi)容在用戶重新進(jìn)入時(shí)將進(jìn)行初始化,也不清除歷史紀(jì)錄;否則,指定newcontext=\"false\"時(shí),將不進(jìn)行初始化設(shè)置,也不清除歷史紀(jì)錄。默認(rèn)狀態(tài)下的設(shè)置值為false。另外,newcontext僅當(dāng)作為go任務(wù)的一部分時(shí)才可被執(zhí)行。

    4)ordered。用于向用戶手機(jī)的瀏覽器指明卡片內(nèi)容的組織形式,以便讓瀏覽器根據(jù)自身特點(diǎn)及卡片內(nèi)容組織及時(shí)安排顯示布局。它有兩種布爾值得設(shè)置,即true和false。

    當(dāng)ordered=\"true\"時(shí),瀏覽器將按照線性順序顯示卡片各區(qū)域的內(nèi)容。這個(gè)線性順序通常是大多數(shù)用戶所習(xí)慣采用的信息瀏覽順序,比如發(fā)送E-mail信息時(shí),我們依次需要E-mail首件人地址、主題及E-mail內(nèi)容,這個(gè)邏輯順序就數(shù)線性順序。

    當(dāng)ordered=\"flase\"時(shí),瀏覽器將根據(jù)用戶選擇或指定的順序來顯示內(nèi)容。這種情況主要是用于顯示用戶選項(xiàng)、無序組建或用戶輸入的簡(jiǎn)單數(shù)據(jù)紀(jì)錄等。

    5)onenterforward。onenterforward事件僅當(dāng)用戶使用go任務(wù)或類似于go的任務(wù)位和瀏覽卡片時(shí)才可發(fā)生,即如果用戶執(zhí)行g(shù)o任務(wù),則瀏覽器就會(huì)定位<go>標(biāo)簽中指定超鏈(href)的URL指定的卡片。card元素中的onenterforward屬性是onevent元素的一個(gè)簡(jiǎn)單格式,用于直接指定onenterforward事件的URL地址。

    6)onenterbackward。該屬性可以指定其響應(yīng)時(shí)間的URL地址。如果用戶瀏覽時(shí)執(zhí)行prev任務(wù),那么瀏覽器就會(huì)定位到該屬性所制定超鏈?(href)的URL地址,并打開URL指定的卡片。onenterbackward屬性也屬于onevent元素的一個(gè)簡(jiǎn)單格式。

    7)ontimer。當(dāng)指定時(shí)間timer過期的時(shí)候,用戶瀏覽器就根據(jù)ontimer屬性指定的URL打開相應(yīng)的卡片。它也屬于onevent元素的一個(gè)簡(jiǎn)單格式。

    3.1.7?access元素

    access元素是由一個(gè)單獨(dú)的的標(biāo)簽<access>標(biāo)簽實(shí)現(xiàn)的元素。用于定義WML整個(gè)卡片組的操作權(quán)限,即訪問控制參數(shù)。access元素必須在head元素內(nèi)和其它的meta信息一起聲明,而且每個(gè)卡片組只能有一個(gè)access元素。其語法格式如下:

    <head>
    <access?domain=\"domain\"?path=\"path\">
    ...
    </head>

    access元素屬性的功能及用法如下:

    1)domain。用于指定對(duì)卡片組進(jìn)行操作的URL域,默認(rèn)域是當(dāng)前卡片組所在的域。domain的目的是限制訪問,用戶瀏覽時(shí)瀏覽器將根據(jù)domain值所規(guī)定的值來得出與值匹配的地址,并訪問該地址對(duì)應(yīng)的卡片或事件。?2)path。用于指定卡片組操作的其它卡片組所在的根目錄。默認(rèn)目錄是“/”,即當(dāng)前卡片組所在的根目錄。默認(rèn)目錄的規(guī)定使得所有在domain域下的卡片組都可以操作當(dāng)前卡片組。path的值是訪問時(shí)需要匹配的路徑,它的工作原理與domain十分相似,需要與路徑的每個(gè)子路徑相匹配,否則均屬無效。

    3.1.8?meta元素

    meta元素用于定義WML卡片組相關(guān)的通用meta信息。該元素是由一個(gè)單獨(dú)的標(biāo)簽即<meta/>標(biāo)簽實(shí)現(xiàn)的元素,其語法格式如下:

    <meta?name=\"name\"|http-equiv=\"name\"?content=\"value\"?forua=\"true|false\"?scheme=\"format\"/>

    其中,name屬性和http-equiv屬性只能選擇使用一個(gè);content屬性是必選的,其值根據(jù)屬性而定;scheme屬性目前尚不支持;forua屬性為可選屬性。各屬性功能及用法說明如下:

    1)content。該屬性用于指定meta信息的性質(zhì)的值,是不必選的。

    2)name。用于指定meta信息性質(zhì)的名稱。用戶瀏覽器通常忽略已經(jīng)命名meta數(shù)據(jù),網(wǎng)絡(luò)服務(wù)企業(yè)拒絕發(fā)送包含該屬性所指定meta數(shù)據(jù)名稱的內(nèi)容。

    3)http-equiv。該屬性用于替代name屬性,可將meta數(shù)據(jù)轉(zhuǎn)為WSP或HTTP協(xié)議的響應(yīng)頭。

    4)forua。該屬性用于指定那些開發(fā)者希望傳送值用戶瀏覽器的性質(zhì)。它有ture和fales兩個(gè)取值,如果取false,則卡片組在發(fā)送往客戶端以前必須用中間代理去除meta元素信息,這是因?yàn)閭鬏數(shù)膮f(xié)議可能改變;若取值為true,則meta數(shù)據(jù)必須如實(shí)送往用戶的瀏覽器。默認(rèn)的狀態(tài)下,該屬性的值為false。

    5)scheme。該屬性用于指定解釋meta信息性質(zhì)值的形式或結(jié)構(gòu)。具體的形式或結(jié)構(gòu)因meta數(shù)據(jù)的類型不同而不同。

    3.2?任務(wù)及其元素

    WML允許我們?cè)诔绦蛑兄付ㄒ恍┤蝿?wù),當(dāng)某些特定的事件激活時(shí),即可執(zhí)行這些任務(wù),從而完成需要的操作。例如,我們可以設(shè)定任務(wù),當(dāng)用戶按下相應(yīng)的功能鍵時(shí),瀏覽器就可以打開指定的卡片組或卡片。目前,WML提供了4個(gè)任務(wù)元素,即go、prev、noop和refresh,它們主要與do元素和onevent元素中指定的事件相響應(yīng)。本節(jié)我們就對(duì)任務(wù)的這些元素做一詳細(xì)介紹。

    3.2.1?go任務(wù)

    go任務(wù)是通過go元素來聲明的,而go元素是通過<go>和<go/>標(biāo)簽進(jìn)行定義的。go元素主要用來定義瀏覽器需要導(dǎo)航的URL地址。如果該地址是一個(gè)WML卡片或卡片組的名字,則瀏覽器就會(huì)打開并顯示相應(yīng)的卡片、卡片組;否則,瀏覽器就會(huì)執(zhí)行該URL指定的任務(wù)或事件等。在歷史推棧中,go任務(wù)執(zhí)行的是一個(gè)“推進(jìn)(push)”操作,也就是說,它執(zhí)行時(shí)瀏覽器瀏覽的URL地址將送入歷史紀(jì)錄列表中,以被它用。

    go元素中可以包含任意次的setvar元素或postfield元素。postfield元素前面已有介紹,這里不再重述,setvar元素我們后面介紹。

    go任務(wù)的語法格式如下:

    <go?href=\"href\"?sendreferer=\"false|true\"?method=\"get|post\"?accept-charset=\"charset\">
    內(nèi)容(context)
    <go/>

    其中屬性的功能及用法介紹如下:

    1)href。該屬性用于指定目標(biāo)URL地址,比如讓瀏覽器顯示的卡片的地址即名稱等。屬性是必選的,其它屬性為可選。

    2)sendreferer。該屬性用于指定是否傳遞調(diào)用href所指定的URL的卡片的URL,也是當(dāng)前頁(yè)的URL,即HTTP頭中HTTP_REFERER。有兩種選擇:true或false。其中,默認(rèn)值為false。

    3)method。與HTML中的表單FORM的method屬性一樣,該屬性用于指定表單是以GET的方式還是post的方式遞交,以便通用網(wǎng)關(guān)接口CGI處理。默認(rèn)值為get,但如果沒有指定method屬性,而<go>和<go/>之間存在postfield元素,則WAP手機(jī)瀏覽器會(huì)自動(dòng)以post方式傳遞。

    4)accept-charset。當(dāng)web服務(wù)器處理來自瀏覽器的輸入信息時(shí),該屬性可指定服務(wù)器進(jìn)行數(shù)據(jù)編碼時(shí)必須采用的字符集列表。也就是說,該屬性指定的字符集替代HTTP頭里指定的字符集,以便作為服務(wù)器選用字符集的標(biāo)準(zhǔn)。

    3.2.2?prev任務(wù)

    prev任務(wù)是由prev元素實(shí)現(xiàn)的。該元素通常是一個(gè)單獨(dú)的標(biāo)簽<prve/>,不過有時(shí)也可由<prev>和</prev>一對(duì)標(biāo)簽進(jìn)行定義。它用于指定將瀏覽器導(dǎo)航至歷史推棧中的前一個(gè)URL地址。在瀏覽器操作的歷史推棧中,prev任務(wù)執(zhí)行的是“取出”操作,將前一個(gè)URL地址取出,并把當(dāng)前URL地址推進(jìn)歷史推棧。如果歷史推棧中沒有前一個(gè)URL地址,即prev/元素不執(zhí)行任何任務(wù)。

    prev任務(wù)的語法格式為:

    <prev/>
    或<prev>?內(nèi)容(content)?</prev>

    在后一語法格式中,prev元素包含的內(nèi)容里面一般是setvar元素,該元素的含義前面已有介紹,這里不再重述,具體的用法隨后介紹。

    3.2.3?refresh任務(wù)

    refresh任務(wù)由refresh元素聲明,它用于刷新當(dāng)前的卡片,對(duì)卡片內(nèi)指定的變量進(jìn)行更新。其語法格式為:

    <refresh>
    內(nèi)容(context)
    </refresh>

    其中包含的內(nèi)容(content)中一般有setvar元素,其語法格式為<setvar?name=\"name\"?value=\"value\"/>,它可指定更新的變量名name,即更新的變量值value。另外,refresh元素也可以不包含setvar元素。而通過時(shí)間限制(timer元素)對(duì)卡片進(jìn)行刷新。

    3.2.4?noop任務(wù)

    noop任務(wù)由noop元素進(jìn)行聲明,表示什么也不做,是一個(gè)空操作,在替代卡片組級(jí)的do元素是十分有用。該元素是一個(gè)單獨(dú)的標(biāo)簽,即?<noop/>?標(biāo)簽。其語法格式如下:

    <nnop/>

    noop元素沒有屬性,下面的簡(jiǎn)單程序中就包含了noop元素實(shí)現(xiàn)得空任務(wù)操作:

    <card?id=\"card1\">
    <do?type=\"options\"?name=\"dome\">
    <noop/>
    </do>
    ...
    </card>

    3.3?時(shí)間及其元素

    WML提供了幾個(gè)元素,專門用于處理用戶瀏覽器的導(dǎo)航和事件。利用這些元素用戶可以給某任務(wù)制定關(guān)聯(lián)事件。那么當(dāng)事件觸發(fā)時(shí),瀏覽器就會(huì)執(zhí)行相應(yīng)的任務(wù),比如URL導(dǎo)航就是通過事件實(shí)現(xiàn)的。而且,事件可以和一個(gè)需要完成的任務(wù)捆綁在一起。事件捆綁時(shí)一般是通過幾種元素及其標(biāo)簽聲明來實(shí)現(xiàn)的,如go、do和onevent等元素。下面我們就講解WML的事件元素及事件。

    3.3.1?do元素

    do元素提供了一個(gè)通用的事件處理機(jī)制,使得用戶可以參與當(dāng)前卡片的事件處理。通過<do>和</do>標(biāo)簽將用戶交互和某一個(gè)任務(wù)聯(lián)系在一起。用戶交互可以是用戶按下的功能鍵、選擇的菜單項(xiàng),也可以是用戶的聲音提示。當(dāng)用戶激活這些交互功能時(shí),用戶瀏覽器就會(huì)執(zhí)行與do元素相關(guān)的任務(wù)。其語法格式如下:

    <do?type=\"type\"?label=\"label\"?name=\"name\"?optional=\"boolean\">
    任務(wù)(task)
    </do>

    其中tast是與do元素關(guān)聯(lián)的動(dòng)作,也是條件激活時(shí)瀏覽器即將執(zhí)行的內(nèi)容。在do元素中,用戶必須綁定且只能綁定go、prev、noop和refresh四種元素所實(shí)現(xiàn)任務(wù)中的一個(gè)任務(wù)(task)。go元素用于定位制定的URL地址,prev元素用于定位并打開前一操作或任務(wù),doop為空操作,refresh用于刷新當(dāng)前卡片組或任務(wù),有關(guān)他們的詳細(xì)用法我們后面會(huì)陸續(xù)介紹。

    do元素可以用于卡片一級(jí),也可用于卡片組一級(jí)。當(dāng)用于卡片一級(jí)時(shí),do元素必須包含在card元素中;而用于卡片組一級(jí)時(shí),do元素必須包含在template元素中,由此定義的do元素將同時(shí)應(yīng)用于當(dāng)前卡片組的所有卡片。此時(shí)如果某個(gè)卡片不想應(yīng)用模板中的do元素及其任務(wù),則需采用我們前面介紹的方法,使用同名事件處理來替代模板中的do元素的事件處理。而且,不論事件關(guān)聯(lián)的任務(wù)是否相同,當(dāng)do元素定義的事件名稱相同時(shí),卡片的do元素將忽視卡片組一級(jí)do元素的影響,及卡片一組的do元素將被優(yōu)先執(zhí)行。

    另外,含有空操作任務(wù)的do元素,不論它是否被激活,它都不會(huì)傳送或顯示到用戶的瀏覽器中,這在一定程度上可以加快瀏覽器的工作效率,因?yàn)榉?wù)器端體它拋棄了一些空任務(wù)的判斷。?do元素各個(gè)屬性的功能及用法講解如下:

    1)type。用于指定do元素的類型(type),也即需要關(guān)聯(lián)、綁定的用戶交互事件,是必選屬性。用戶瀏覽器接到這些事件后,就會(huì)激活它們并執(zhí)行相應(yīng)的操作與處理。如果在一個(gè)卡片中定義了多個(gè)do元素并擁有同樣type,那么用戶必須為每個(gè)do指定不同的事件名才行,否則就會(huì)發(fā)生判斷混亂的錯(cuò)誤。

    do元素典型的類型(type)及執(zhí)行條件介紹如下:

    1、accept。當(dāng)用戶選擇或按下相應(yīng)功能鍵時(shí)(accept)、選項(xiàng)、命名或按鈕時(shí),瀏覽器接收或激活當(dāng)前所作選擇。?2、prev。激活prev鍵時(shí),瀏覽器將導(dǎo)航到歷史記錄中的前一個(gè)卡片。

    3、help。激活HELP功能鍵或相應(yīng)按鈕、命名時(shí),瀏覽器顯示與當(dāng)前內(nèi)容相關(guān)的幫助信息。

    4、reset。激活reset功能鍵或相應(yīng)按鈕、命名時(shí),清除或重置當(dāng)前卡片組或?yàn)g覽器的狀態(tài)。

    5、options。激活options功能鍵或相應(yīng)按鈕、命名時(shí),瀏覽器顯示與當(dāng)前內(nèi)容有關(guān)的選項(xiàng)或附加操作。

    6、delete。激活delete功能鍵或相應(yīng)按鈕、命名時(shí),刪除當(dāng)前項(xiàng)目或選擇。

    7、unknown。如果給出的類型不能為do元素所識(shí)別,則一律按照unknown型處理,相當(dāng)于類型為空,即type=\"\"。

    8、vnd.*。vnd.*及其它不同大小寫組合[Vv][Nn][Dd].*。這種類型定義的都是vnd.cotype,用于激活供應(yīng)商或用戶瀏覽器自定義的某個(gè)特定功能,其中co為公司(company)名的縮寫。

    9、X-*與X-*。擴(kuò)展類型,目前WML中還沒有使用。

    2)label。該屬性指定的文本字符串可以表示用戶的交互事件。例如,當(dāng)涯騁桓鋈撾癜蠖ㄔ赼ccept鍵上之后,并設(shè)置了label屬性,比如label=\"gone\",那么瀏覽器就會(huì)將label的值“gome”顯示在屏幕上;如果不指定,瀏覽器則會(huì)顯示默認(rèn)的“ok”字符串。為了保證能在較小的手機(jī)上顯示出來,label的屬性值最多不超過6個(gè)字符。不過這可能因WAP手機(jī)品牌、型號(hào)不同而稍有不同,有的手機(jī)最多不能超過5個(gè)字符。而且,如果手機(jī)瀏覽器不支持動(dòng)態(tài)標(biāo)簽顯示,那么它就會(huì)忽視label屬性。

    3)該屬性用于指定do元索所綁定事件的名稱。如果多個(gè)do元素制定了相同的name,那么他們綁定的事件統(tǒng)屬一個(gè)。如果卡片一般與卡片組一級(jí)中do元素制定了相同的事件名,那么卡片一級(jí)的時(shí)間將被優(yōu)先執(zhí)行,卡片組一級(jí)的事件將被忽視。

    WML規(guī)定,在同一卡片或在同一模板中,不得指定具有相同事件名(name)的兩個(gè)或兩個(gè)以上的do元素。

    另外,如果name屬性值為空,則相當(dāng)于沒有指定name屬性,這時(shí)do元素執(zhí)行的事件或操作由type的屬性值決定。

    4)optional。指定瀏覽器是否忽視do元素及其包含的任務(wù)。有兩個(gè)可選值:true和false。如果值為true,則瀏覽器將忽視當(dāng)前do元素,即不執(zhí)行它所綁定的任務(wù)。反之,若值為false,則執(zhí)行do元素。

    3.3.2?ontimer事件

    ontimer用于指定一個(gè)事件。當(dāng)<timer/>?標(biāo)簽指定的時(shí)間到期后,瀏覽器就執(zhí)行ontimer所指定的這個(gè)事件。ontimer的時(shí)間可以是一個(gè)URL地址,一個(gè)卡片組,一個(gè)WML網(wǎng)頁(yè),一幅圖像或其他符合URL定位的規(guī)則的文件。<timer/>標(biāo)簽指定的時(shí)間為正整數(shù),單位大小為1/10秒。

    ontimer時(shí)間只能包含在card元素或template元素的標(biāo)簽中進(jìn)行定義,其語法形式如下:

    <card?id=\"name\"?title=\"label\"?newcontext=\"boolean\"?ordered=\"true\"?onenterforward=\"href\"?onenterbackward=\"href\"?ontimer=\"href\">
    內(nèi)容(content)
    </card>

    或:

    <template?onenterforward=\"href\"?onenterbackward=\"href\"?ontimer=\"href\">
    內(nèi)容(content)
    </template>

    ontimer事件只有一個(gè)屬性,即ontimer。它用于指定一個(gè)超鏈(href)的URL地址,指定時(shí)間timer過期的時(shí)候,用戶瀏覽器就會(huì)按照超鏈(href)的URL打開相應(yīng)的卡片。

    3.3.3?onenterforward事件

    onenterforward事件僅當(dāng)用戶使用go任務(wù)或類似于go任務(wù)的任務(wù)來定位和瀏覽卡片時(shí)才可發(fā)生。設(shè)置onenterforward事件后,當(dāng)用戶進(jìn)入當(dāng)前卡片組時(shí),瀏覽器就會(huì)定位onenterforward屬性或<go/>標(biāo)簽中指定超鏈(href)的URL地址,并打開URL指定的卡片。

    onenterforward事件需要包含在card元素、template元素或onevent元素的標(biāo)簽中進(jìn)行定義,其語法格式為:

    <card?id=\"name\"?title=\"label\"?newcontext=\"boolean\"?ordered=\"true\"?onenterforward=\"href\"?onenterbackward=\"href\"?ontimer=\"href\">
    內(nèi)容(content)
    </card>

    或:

    <template?onenterforward=\"href\"?onterbackward=\"href\"?ontimer=\"href\">
    內(nèi)容(content)
    </template>

    或:

    <onevent?type=\"onenterforward\">
    <go?href=\"href\"/>其他任務(wù)(task)
    </onevent>

    前兩種格式中,onenterforward事件作為card元素或template元素標(biāo)簽中的一個(gè)屬性進(jìn)行定義的,該屬性即為onenterforward,它制定了一個(gè)超鏈(href)的URL地址,當(dāng)用戶進(jìn)入當(dāng)前卡片時(shí),瀏覽器就據(jù)此打開URL指定的卡片。這種格式制定的任務(wù)相當(dāng)與go任務(wù)。

    3.3.4?onenterbackward事件

    當(dāng)用戶使用prev任務(wù)或類似的任務(wù)來導(dǎo)航至某一卡片時(shí),onenterbackward事件才可發(fā)生。換句話說,當(dāng)用戶從歷史堆棧中選取URL地址,并通過瀏覽器打開這一地址對(duì)應(yīng)的卡片時(shí),onenterbackward事件才可能發(fā)生。

    與onenterforward事件類似,onenterbackward事件也需要包含在card元素、template元素或onevent元素的標(biāo)簽中進(jìn)行定義。其具體語法格式如下:

    <card?id=\"name\"?title=\"label\"?newcontext=\"boolean\"?ordered=\"true\"?onenterforward=\"href\"?onenterbackward=\"href\"?ontimer=\"href\">
    內(nèi)容(content)
    </card>

    或:

    <template?onenterforward=\"href\"?onterbackward=\"href\"?ontimer=\"href\">
    內(nèi)容(content)
    </template>

    或:

    <onevent?type=\"onterbackward\">
    <go?href=\"href\"/>其他任務(wù)(task)
    </onevent>

    前兩種格式中,onterbackward事件是作為card元素或template元素標(biāo)簽中的一個(gè)屬性進(jìn)行定義的,該屬性即為onterbackward,它指定了一個(gè)超鏈(href)的URL地址,當(dāng)用戶使用prev等任務(wù)項(xiàng)回到地址時(shí),瀏覽器就會(huì)打開URL指定的卡片。

    后一種格式中,onterbackward事件作為onevent元素的一給類型值,并結(jié)合<go/>標(biāo)簽指定事件激活時(shí)瀏覽器需要打開的卡片的URL地址。

    3.3.5?onpick事件

    onpick事件在定義時(shí)一般通過onpick屬性指定一些項(xiàng)目,當(dāng)用戶選擇或取消這些項(xiàng)目時(shí),即可觸發(fā)onpick事件,執(zhí)行onpick屬性所指定的項(xiàng)目,如打開卡片、卡片組或其他事件等。onpick事件通常在option元素的標(biāo)簽中進(jìn)行定義,其語法格式如下:

    <option?value=\"value\"?onpick=\"href\">
    內(nèi)容(content)
    </opiton>

    可以看出onpick時(shí)間作為option元素的一個(gè)屬性來定義具體的動(dòng)作。這個(gè)屬性即onpick,它指定了事件觸發(fā)時(shí)瀏覽器需要定位的超鏈的URL地址。

    3.3.6?onevent元素

    onevent元素通過<onevent>和</onevent>標(biāo)簽可以把包含的任務(wù)與特定的時(shí)間捆綁在一起。當(dāng)用戶激活這一特定事件時(shí),onevent元素所綁定的任務(wù)就會(huì)被立即執(zhí)行。onevent元素的語法格式如下:

    <onevent?type=\"type\">
    任務(wù)(task)
    </onevent>

    其中task是與onevent元素關(guān)聯(lián)的動(dòng)作,也是條件激活時(shí)瀏覽器即將執(zhí)行的內(nèi)容。與do元素一樣,onevent元素中用戶也必須綁定且只能綁定go、prev、noop和refresh四種元素所實(shí)現(xiàn)任務(wù)中的一個(gè)任務(wù),go元素用于定位指定URL地址、prev元素用于定位并打開前一操作或任務(wù),noop為空操作,refresh用于刷新當(dāng)前卡片組或任務(wù)。

    onevent元素只有一個(gè)屬性,即type屬性,它是必選屬性,主要用于定義特定事件的名稱。該屬性值的數(shù)據(jù)類型為CDATA型。

    3.3.7?postfield元素

    postfield元素用于指定當(dāng)瀏覽器接到URL請(qǐng)求時(shí),向原服務(wù)器(origin?server)傳送的域名其域值。傳輸時(shí),傳輸域及傳輸值的實(shí)際編碼方式主要依賴于瀏覽器與原服務(wù)器的通信方式。postfield元素是通過單獨(dú)?lt;postfield/>標(biāo)簽進(jìn)行定義的,其語法格式如下:

    <postfield?name=\"name\"?value=\"value\">

    它共有兩個(gè)屬性:name與value,它們的取值均屬于VDATA型數(shù)據(jù)。其中,name屬性用于指定傳輸域的名稱,value屬性用于定義傳輸?shù)闹怠_@兩個(gè)屬性均為必選屬性。

    3.4?變量設(shè)置元素與變量設(shè)置的有關(guān)規(guī)定

    幾乎所有的WML內(nèi)容都可通過設(shè)置參數(shù)來實(shí)現(xiàn),這為我們靈活的開發(fā)WML程序提供了方便。本節(jié)我們先介紹一個(gè)變量設(shè)置元素,然后再介紹與變量設(shè)置有關(guān)的一些具體規(guī)定。

    3.4.1?setvar元素

    setvar元素用于指定在當(dāng)前上下文內(nèi)容中的變量的值,從側(cè)面影響正在運(yùn)行的任務(wù)。其語法格式如下:?<setvar?name=\"name\"?value=\"value\"/>

    它有兩個(gè)屬性:name和value。前者用于指定變量的名稱,后者用于指定所需賦給變量的值。這兩個(gè)屬性都是必選的,它們的數(shù)據(jù)類型均屬于VDATA型。如果name屬性所規(guī)定的變量名不合法或不符合運(yùn)行環(huán)境的要求,那么setvar元素在WML程序運(yùn)行中將被忽視,不能發(fā)揮其應(yīng)有的作用。

    3.4.2?變量設(shè)置

    WML編程中可以使用變量,變量使用前必須進(jìn)行定義。變量的命名原則及定義方法我們上一章已經(jīng)講過了,這里不再重述。在這里,我們主要介紹WML程序中設(shè)置變量的規(guī)定。

    如前所述,setvar元素可用來設(shè)置變量,設(shè)置時(shí)setvar元素一般需要在go、prev或refresh元素中進(jìn)行定義。另外,利用input和select元素也可以設(shè)置變量。其中前者是將用戶輸入的文本賦給變量,作為變量的值;而后者則將用戶從option元素中選擇的value屬性的值賦給變量。有關(guān)input元素和select元素的語法格式及具體用法我們后面再行介紹。

    設(shè)置變量時(shí),以下幾種情況還應(yīng)當(dāng)引起大家注意:

    1)可以使用WMLScript的變量值設(shè)置WML的變量,反之亦然。也就是說,使用WML及WMLScript編寫程序時(shí),它們可以使用同名編程。

    2)在WAP開發(fā)工具中,通常提供有對(duì)變量進(jìn)行管理和維護(hù)的選項(xiàng)卡或?qū)υ捒颍_發(fā)人員從中也可以對(duì)相應(yīng)的變量進(jìn)行設(shè)置及編輯。

    3)在當(dāng)前上下文內(nèi)容中,可以使用card元素的newcontext屬性來消除所有的變量值。

    3.5?用戶輸入處理元素

    通過WAP手機(jī)的按鍵,用戶可以向?yàn)g覽器顯示的卡片中輸入數(shù)據(jù)信息或操作信息。WML為此專門提供了處理用戶輸入的元素。

    3.5.1?input元素

    input元素用于定義文本實(shí)體對(duì)象,包含有對(duì)輸入文本內(nèi)容的格式、數(shù)據(jù)類型、長(zhǎng)度、值、變量名等多種屬性的具體規(guī)定。當(dāng)用戶輸入滿足input元素的規(guī)定時(shí),則接收輸入信息,并賦給指定的變量靈活進(jìn)行相應(yīng)的操作、處理;否則,就通過瀏覽器給出具體的處理意見,并進(jìn)行是單個(gè)輸入處理或變量初始化操作,比如刷新卡片以讓用戶重新輸入,或給用戶指出輸入錯(cuò)誤所在并等待進(jìn)一步的處理指令等。input元素是WML編程中處理用戶交互活動(dòng)的重要元素,它通過單獨(dú)的<input/>標(biāo)簽進(jìn)行定義,其語法格式如下:

    <input?name=\"variable\"?title=\"label\"?type=\"type\"?value=\"value\"?default=\"default\"?format=\"specifier\"?emptyok=\"false|true\"?size=\"n\"?maxlength=\"n\"?tabindex=\"n\"/>

    其中除了name屬性是必選的以外,其他屬性都是可選的。這些屬性的功能和用法介紹如下:?1)name。該屬性用于指定用來保存用戶輸入文本的變量和名稱。定義name屬性后WML將根據(jù)該屬性也即變量名,為即將輸入的文本實(shí)體對(duì)象與之存儲(chǔ)空間,以便接收用戶輸入。

    2)title。該屬性用于input元素的標(biāo)簽,通常是位于輸入框前的提示信息。

    3)type。用于指定文本輸入?yún)^(qū)的類型,有text和password兩種選擇。默認(rèn)值為text,指定的用戶可以輸入文本,而且輸入的文本會(huì)同時(shí)逐漸響應(yīng)并顯示在瀏覽器中。如果選擇password,則指定用戶輸入的文本作為密碼文本處理,WML程序按文本實(shí)體接收輸入的數(shù)據(jù),而瀏覽器上響應(yīng)用戶輸入顯示時(shí)逐漸均為星號(hào)(*),由此起到保密的目的。

    4)value。該屬性用于指定name屬性所定義變量的值,它將顯示在輸入框中。

    5)default。該屬性用于指定name屬性所定義變量的默認(rèn)值。

    6)format。該屬性用于格式化輸入的數(shù)據(jù)。

    7)maxlength。該屬性用于指定用戶可輸入字符串的最大長(zhǎng)度。該屬性的上限為256,最多不能超過256個(gè)字符。

    8)emptyok。用于指定用戶是否可以不在輸入框內(nèi)輸入內(nèi)容。

    9)size。該屬性用于指定輸入框的寬度,寬度值為字符個(gè)數(shù)。

    10)tabindex。用于指定多個(gè)輸入框存在時(shí),類似于HTML中Tab鍵的具體位置。

    3.5.2?select元素

    選擇列表屬于輸入元素,允許用戶從選項(xiàng)列表中選擇需要的項(xiàng)目。WML不僅支持單選列表,及單選項(xiàng),而且支持多選列表,也就是復(fù)選項(xiàng)。select元素允許用戶從選列表中選擇所需的項(xiàng)目。列表中的選項(xiàng)采用后面我們就要講到的option元素進(jìn)行定義,一般是一行格式化的文本。編程時(shí),我們可以使用optgroup元素將option元素的情況項(xiàng)目分成不同級(jí)別或?qū)哟蔚倪x項(xiàng)組,為用戶選擇提供方便。

    select元素是通過<select>和</select>標(biāo)簽進(jìn)行定義的,語法格式如下:

    <select?title=\"label\"?multiple=\"false|true\"?name=\"variable\"?default=\"default\"?iname=\"index_var\"?ivalue=\"default\"?tabindex=\"n\">
    內(nèi)容(content)
    </select>

    其中所有屬性都是可選的。select元素各個(gè)屬性的功能和用法介紹如下:

    1)multiple。該屬性用于指定選擇列表是否可以使用復(fù)選框。

    2)name。該屬性用于指定接收選項(xiàng)值的變量的名稱,變量值由value屬性預(yù)設(shè)定。

    3)value。用于制定name屬性所定義變量的默認(rèn)值。

    4)iname。用于指定包含排序號(hào)的變量的名稱。

    5)ivalue。用于指定選擇列表中被選中選項(xiàng)的值,是一個(gè)具有排序號(hào)性質(zhì)的值。?6)title。用于指定選擇列表的標(biāo)題。

    7)tabindex。用于指定當(dāng)前選擇光標(biāo)在選擇列表中的具體位置,該位置即為當(dāng)前選擇操作將要選擇的選項(xiàng)所在的位置。

    3.5.3?option元素

    option元素用于定義select元素中的一組單選項(xiàng)。它通過<option>和</option>標(biāo)簽進(jìn)行定義,并可包括事件和單選項(xiàng)的顯示文本等信息,其語法格式如下:

    <option?title=\"label\"?value=\"value\"?onpick=\"href\">
    內(nèi)容(content)
    </option>

    option元素的屬性均為可選,各屬性功能及用法說明如下:

    1)value。該屬性用于設(shè)置鍵值。當(dāng)用戶選到該選項(xiàng)之后,option元素就會(huì)將該值賦給selet元素的name屬性所指定的變量。

    2)title。用于option元素制定的一個(gè)標(biāo)題,以便提示用戶操作。

    3)onpick。該屬性用于指定用戶選到該項(xiàng)并按accept鍵后所打開卡片組的L。

    3.5.4?optgroup元素

    optgroup元素用于將多個(gè)相關(guān)的option元素進(jìn)行分組,用戶瀏覽器可以借助這種分組來安排選項(xiàng)列表的顯示布局,以方便用戶選擇。optgroup元素是通過<optgroup>和</optgroup>標(biāo)簽進(jìn)行定義的,其語法格式如下:

    <optgroup?title=\"label\">
    內(nèi)容(content)
    </optgroup>

    它所包含的內(nèi)容中需要包含至少一次option元素或其他的optgroup元素。

    optgroup元素只有一個(gè)屬性,即title屬性,用于定義optgroup元素的標(biāo)題,以便提示用戶操作。

    3.5.5?fieldset元素

    fieldset元素用于設(shè)定輸入框和相應(yīng)的說明文本,從而用戶就可以利用input元素等借助該輸入框輸入所需的數(shù)據(jù)信息。fieldset元素的語法格式如下:

    <fieldset?title=\"label\">
    內(nèi)容(content)
    </fieldset>

    由于fieldset元素和輸入有關(guān),所以它們的內(nèi)容中可以包含與輸入有關(guān)的其他元素。?其語法格式可以看出,fieldset元素只有一個(gè)屬性,即title屬性,用于定義fieldset元素的標(biāo)題,以便提示用戶操作。

    3.6?錨、圖像、定時(shí)器及其元素

    本節(jié)我們講解與定位和定時(shí)控制有關(guān)的3類元素,包括anchor、a、img、timer幾種元素。使用它們可以在WML卡片中創(chuàng)建超鏈接,或在文本流中顯示一幅圖像,或設(shè)置定時(shí)器來控制用戶操作及卡片顯示等。

    3.6.1?anchor元素

    anchor元素用于創(chuàng)建一個(gè)超鏈接的頭部,超鏈接的其余部分為用戶指定的URL地址。當(dāng)程序運(yùn)行中用戶選中該超鏈接時(shí),瀏覽器就會(huì)被引入到超連接指定的地址,如其他卡片組或同一卡片組中的其他卡片。

    anchor元素由<anchor>和</anchor>標(biāo)簽進(jìn)行定義,它所包含的超連接必須是真實(shí)存在的,而且是能夠正確連接的超連接。anchor元素定位超鏈接時(shí),必須通過相關(guān)的任務(wù)元素完成定位處理,如go元素、prev元素、refresh元素等。不過,在anchor元素中只能包含1個(gè)定位任務(wù),多于一個(gè)時(shí)會(huì)導(dǎo)致WML運(yùn)行錯(cuò)誤。

    anchor元素的語法格式如下:

    <anchor?title=\"label\">
    任務(wù)
    文本
    </anchor>

    其中的任務(wù)需要包含一個(gè)進(jìn)行定位的任務(wù)元素。可以看到,anchor元素只有一個(gè)屬性,即title屬性,用于定義fieldset元素的標(biāo)題,它用于定義即title屬性,用于定義fieldset元素的標(biāo)題,以便提示用戶操作。元素的超連接的標(biāo)題。用戶瀏覽時(shí)可利用這一標(biāo)題來及時(shí)了解操作的超連接的名稱或者有關(guān)提示信息。

    3.6.2?a元素

    a元素是由anchor元素的簡(jiǎn)化形式,它內(nèi)含了anchor元素需要包含的go元素功能愛完成超連接定位,并且不再包含其他任何變量設(shè)置。它使用<a>和</a>標(biāo)簽進(jìn)行定義。

    3.6.3?img元素

    img元素用于格式化的文本中防止和顯示一幅圖像。當(dāng)然,前提是用戶所用的瀏覽器必須支持圖像顯示。img元素由單獨(dú)的<img/>標(biāo)簽進(jìn)行定義,它不包含其它元素。其語法格式如下:

    <img?alt=\"text\"?src=\"url\"?localsrc=\"icon\"?aligh=\"alignment\"?height=\"n\"?width=\"n\"?vspace=\"n\"?hspace=\"n\"/>

    屬性中alt和src是必須要有的,其他可選。另外,需要注意的是img元素要放在p元素里
    ,而不能放在do或option元素里。

    img元素各個(gè)屬性的功能和用法介紹如下:

    1)alt。該屬性用來指定當(dāng)手機(jī)不支持圖像顯示用來替代現(xiàn)實(shí)的文字文本。

    2)src。該屬性用于指定圖像文件的URL地址。

    3)localscr。該屬性用來指定顯示存在手機(jī)ROM的圖標(biāo)文件。

    4)align。該屬性用來指定圖像顯示是相對(duì)當(dāng)前文本行的對(duì)齊方式。

    5)height。用于設(shè)定圖像顯示時(shí)的高度。

    6)width。與height屬性類似,用于設(shè)定圖像顯示時(shí)的寬度或?qū)挾劝俜直取?br />
    7)vspace。該屬性用于指定圖像顯示時(shí)的上邊距和下邊距,默認(rèn)值為0。

    8)hspace。與vspace屬性類似,該屬性用于指定圖像顯示時(shí)的左邊距和右邊距。

    3.6.4?timer元素

    timer元素用于設(shè)定一個(gè)定時(shí)器,可以延時(shí)顯示卡片組、卡片,或?qū)崿F(xiàn)WML程序的等待操作,或在卡片組和卡片之間實(shí)現(xiàn)切換以取得動(dòng)畫效果。

    一個(gè)卡片只能使用一次timer元素,也即是說只能設(shè)置一個(gè)定時(shí)器。當(dāng)用戶進(jìn)入還有定時(shí)器的卡片時(shí),定時(shí)器就會(huì)開始工作,其時(shí)間值就會(huì)逐漸減小。timer元素指定的時(shí)間值單位1/10秒。其語法格式如下:

    <timer?name=\"variable\"?value=\"value\"/>

    它的兩個(gè)屬性中,value屬性是必選的,name屬性為可選。name屬性用于指定表示時(shí)間值的變量的名稱,該變量的取值由定時(shí)器的時(shí)間值決定,時(shí)間值減小,該變量的值也相應(yīng)地減小,并終始保持不變。

    value屬性用于指定name屬性所定義變量的初始值。如果name屬性定義的變量在定時(shí)器初始化時(shí)還沒有值,那么該變量就將采用value屬性指定的值;否則,改變量就會(huì)忽視value屬性的值。如果沒有定義name屬性,也就是說,沒有指定時(shí)間變量,那么timer元素指定的定時(shí)器仍將采用value屬性的值進(jìn)行延時(shí)處理。

    3.7?文本格式化及其元素

    WML程序中,為使顯示的文本呈現(xiàn)出豐富的樣式,WML提供了一些用于格式化的元素,我們通過這些元素及其相應(yīng)的標(biāo)簽可以對(duì)文本進(jìn)行標(biāo)注和控制,從而實(shí)現(xiàn)不同的顯示效果。

    3.7.1?增強(qiáng)元素

    增強(qiáng)元素都是一些成對(duì)的標(biāo)簽,用于指定文本的增強(qiáng)顯示信息。比如b元素通過<b></b>標(biāo)簽可以控制其中的文本按照粗體字進(jìn)行顯示。?3.7.2?br元素

    “br”即break,是用于換行的元素,它是使用單獨(dú)的<br/>標(biāo)簽進(jìn)行定義的。br元素的作用相當(dāng)于插入一個(gè)回車符。

    3.7.3?p元素

    “p”即指paragraph,p元素用于劃分段落,是當(dāng)前文本換行并插入一個(gè)空白行。p元素可以使用單獨(dú)的<p/>標(biāo)簽進(jìn)行定義,也可以使用<p>和</p>標(biāo)簽成對(duì)的進(jìn)行定義。其語法格式為:

    <p?aligh=\"alignment\"?mode=\"wrapmode\"/>



    <p?aligh=\"alignment\"?mode=\"wrapmode\"/>
    文本
    </p>

    1)align。該屬性用于設(shè)置段落在瀏覽器中的對(duì)齊方式,有l(wèi)eft、center和righ三種取值。這三種參數(shù)值分別表示p元素當(dāng)前定義的文本段落及瀏覽器窗口的左側(cè)、中間和右側(cè)進(jìn)行對(duì)齊。默認(rèn)值為left,及段落與瀏覽器窗口的左側(cè)對(duì)齊排列。

    2)mode。該屬性用于指定下一段落的換行方式。

    3.7.4?td元素

    td元素用于規(guī)定表格單元格的內(nèi)容。其語法格式如下:

    <td>?單元格內(nèi)容?</td>

    3.7.5?tr元素

    WML中的表格是按照行、列進(jìn)行組織的。一個(gè)表格由若干行組成,每行由若干列組成。tr元素用于定義表格的行。其語法格式如下:

    <tr>?單元格內(nèi)容?</td>
    </tr>

    3.7.6?table元素

    table元素與tr元素、td元素一起,可用來創(chuàng)建能容納文本和圖像的表格,并可設(shè)置表格各列中文本和圖像的對(duì)齊方式。其語法格式如下:

    <table?align=\"alignment\"?title=\"label\"?columns=\"n\">



    <table?align=\"alignment\"?title=\"label\"?columns=\"n\">
    內(nèi)容
    </table>

    其中各個(gè)屬性的功能和用法介紹如下:

    1)align。該屬性用于指定表各個(gè)列中文本和圖像的對(duì)齊方式。

    2)title。該屬性用于指定table元素的標(biāo)題。

    3)columns.該屬性用于指定表格的列數(shù),該數(shù)不能為0。
    posted on 2006-04-29 09:42 崛起的程序員 閱讀(232) 評(píng)論(0)  編輯  收藏 所屬分類: 載選文章
    主站蜘蛛池模板: 无码人妻久久一区二区三区免费丨 | 国产亚洲AV夜间福利香蕉149| 久久夜色精品国产亚洲av| 亚洲乱码国产一区三区| 337p日本欧洲亚洲大胆色噜噜| 国产成人精品日本亚洲专区6| 亚洲a∨国产av综合av下载| 日本一区二区三区在线视频观看免费| 巨胸喷奶水视频www免费视频| 最近免费中文字幕高清大全| 成人片黄网站色大片免费| 亚洲色图综合在线| 亚洲一区二区三区电影| 亚洲爆乳AAA无码专区| 三级黄色在线免费观看| 免费人成网站在线观看10分钟| 国产成人啪精品视频免费网| 亚洲乱码国产一区三区| 亚洲熟妇自偷自拍另欧美| 国产成人自产拍免费视频| 国产成人精品免费视| 亚洲&#228;v永久无码精品天堂久久| 亚洲精品无码国产| 亚洲欧洲精品成人久久曰| a级毛片在线免费| 午夜毛片不卡免费观看视频| 亚洲精品国产美女久久久| 亚洲国产系列一区二区三区| caoporn成人免费公开| 皇色在线视频免费网站| 中文字幕亚洲无线码a| 亚洲日本VA午夜在线影院| 久久黄色免费网站| 国产免费观看网站| 亚洲AV日韩AV永久无码绿巨人 | 久久精品国产亚洲av水果派| 午夜亚洲国产理论片二级港台二级| 两个人看的www高清免费观看| 最近中文字幕mv免费高清视频7| 亚洲精品无码MV在线观看| 最新亚洲人成无码网站|