WML學習(二):基本格式和文件頭_Xml教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:WML學習(三):顯示文本
      顯示文本 在文本的顯示上WML基本和HTML相同。文字段落包含在p align= alignment mode= wrapmode和/p之間,align屬性指定該段文字的對齊方式,默認的是left,其他可選擇right和center;mode屬性指定當一行顯示不下所有的文字時是否自動換行,默認的是自動

      基本格式和文件頭
      wml文件的一般格式:

      <?xml version="1.0"?>
      <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
      <wml>
      <head>
      <access/>
      <meta..../>
      </head>
      <card>
      Some contents...
      </card>
      <wml>

         結構看上去和HTMl文件很類似,對于每一個DECK,在其文檔開頭必須指明以下的類型聲明:
      <?xml version="1.0"?>
      <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
      千萬注意字母的大小寫。對于一個DECK,其文件大小最好不要超過1.2K。

         <wml>標簽和HTML中的<html>標簽一樣,用來表明這是一個 WML的DECK,它有一個可選的xml:lang屬性來制定文檔的語言,比如<wml xml:lang="zh">表示文檔語言為中文。

         和HTML一樣<head>標簽包含了該DESK的相關信息。<head> 標簽之間可以包含一個<access>標簽和多個<meta>標簽。

         <access domain="域" path="/路徑" />相當于HTML中的<BASE>標簽,指定該DECK的訪問控制信息,它用兩個可選的屬性,domain用來指定域,默認值為當前域, path用來指定路徑,默認值為"/",即根目錄。由于 <access>單獨使用,所以要用/結尾,以后對于類似的情況不再贅述。

         <meta 屬性 content="值" scheme="格式" forua="true|false"/> 和HTML中的類似,提供了該DECK的meta信息。屬性是必選的,包括一下三種情況
         name="name" UP.Link Server忽略meta數據
         http-equiv="name" UP.Link Server將meta 數據轉為 HTTP 響應頭(同HTML)
         user-agent="agent" UP.Link Server 直接將 meta 數據傳給手機設備,content屬性也是必選的,其內容根據屬性而定。scheme屬性目前尚不支持。forua 為可選屬性,指定在該wml文件傳到客戶端之前,<meta>標簽是不是被中間代理刪除(因為傳輸的協議可能改變),默認值為false。

         目前支持的meta數據:
         <meta http-equiv="Cache-Control" content="max-age=3600"/>指定DECK在手機內存緩存中的存儲時間段,默認的為30天(除非內存耗盡),在該期間,手機對于訪問過的DECK直接從緩存里調用。如果信息是對時間敏感的,可以用max-age指定DECK在緩存里的生存期,最小單位是秒, 如果指定為0, 則每次都需通過連接服務器來調用該DECK。

         <meta user-agent="vnd.up.markable" content="false"/>和<meta user-agent="vnd.up.bookmark" content="指定的URL"/> 類似于普通瀏覽器的書簽功能。當用戶將一個CARD做了書簽后,手機瀏覽器首先用一個標記記錄該CARD,這個標記默認的是<card>標簽中的title屬性(以后會講到),然后當用戶選擇了該書簽以后,瀏覽器就會打開被記錄的URL。但是因為在默認的情況下,手機會記錄所有的DECK,所以,一般<meta>被用來使手機不要記錄當前的URL,即
      <meta user-agent="vnd.up.markable" content="false"/>。此外, 如果要為書簽指定不同于當前DRECk的 URL,用<meta user-agent="vnd.up.bookmark" content="指定的URL"/>。

         一個DECK可以包含多個CARD,每個CARD的內容可能不止一屏顯示,注意DECK,CARD和屏幕顯示范圍的關系。一個CARD用<card>和</card>包含。<card>可以包含以下可選的屬性:
      <card id="name" title="label" newcontext="false" ordered="true" onenterforward="url" onenterbackward="url" ontimer="url">
         *id屬性用來指定CARD的名字,可用來在CARD間跳轉,相當于在HTML中在頁內跳轉時用<A NAME="jumpHere">。
         *title屬性用來作為書簽的標記,該屬性一般不會顯示在屏幕上。
         *newcontext屬性,默認值為false, 用來指示當跳轉到本CARD時,手機是不是要清除以前保留的信息,包括變量,堆棧里的歷史記錄,重新設置手機狀態等。
         *ordered屬性,默認值是true,表明該CARD里的內容是按固定的順序顯示, 還是按用戶的選擇來顯示。這點和HTMl不同,CARD 頁面里的內容可以按一定的順序顯示,默認的是按線性順序顯示,即按代碼的順序,但是,要注意的是,以下三個標簽必須按以下順序來寫<onevent> <timer> <do>, (這和以后要講的“事件”有關)。這樣做是為了方便填表單,當ordered設置為true時,如果一個表單的內容不能在一屏里顯示完,就分成多屏顯示;當ordered設置為false時,手機可以顯示一個概要CARD來總結有效的選項,用戶可以從中選取表單選項來填寫。
         *onXXX屬性,類似于HTML標簽中的onXXX屬性,用來捕捉事件,當事件被觸發時執行指定的操作(任務),在這里是轉向某個URL。

       

      分享:WML學習(四):錨和任務
      錨和任務 連接是 HTML 頁面里最基本的功能, 在 WML 里也一樣用 a href=url title=label 和 /a來包括用來建立連接的文字,必選屬性href指定了要打開的URL,可選的title屬性給該連接取個標記名字,這個名字將作為軟按鈕之一的ACCEPT鍵(詳見以前的HDML入門

      來源:模板無憂//所屬分類:Xml教程/更新時間:2010-03-09
      相關Xml教程