這篇文章主要介紹“HTML5移動(dòng)應(yīng)用開發(fā)新的可視化UI特性怎么實(shí)現(xiàn)”,在日常操作中,相信很多人在HTML5移動(dòng)應(yīng)用開發(fā)新的可視化UI特性怎么實(shí)現(xiàn)問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”HTML5移動(dòng)應(yīng)用開發(fā)新的可視化UI特性怎么實(shí)現(xiàn)”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)綏寧免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千多家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
先決條件
在這里中,您將使用最新的Web技術(shù)開發(fā)Web應(yīng)用程序。這里的大部分代碼只是HTML,JavaScript和CSS —所有Web發(fā)人員的核心技術(shù)。所需的最重要的工具是用于進(jìn)行測(cè)試的瀏覽器。此處大部分代碼將在最新桌面瀏覽器上運(yùn)行,但也有一些例外,我們將在文章中進(jìn)行說明。當(dāng)然,您也必須在移動(dòng)瀏覽器上測(cè)試,從而,您需要最新的iPhone和Android SDK。
通過Canvas實(shí)現(xiàn)圖形效果
多年以來,Web開發(fā)人員一直在重復(fù)畫布上。現(xiàn)在,為什么還有人會(huì)重復(fù)瀏覽器中的一個(gè)原生畫圖API呢?然后,它允許您創(chuàng)建某種圖形界面,否則您將需要某種瀏覽器插件(每Web開發(fā)人員抱怨Canvas的原因是:盡管現(xiàn)在它可用于Firefox和Safari已經(jīng)很多年,但最流行的桌面瀏覽甚至Internet Explorer 9的早期版本也不支持Canvas。因此,多年來,Canvas一直是最大的技術(shù)笑話。您可能會(huì)發(fā)現(xiàn),這些令人驚嘆的Canvas樣例多層整個(gè)Internet,但您不能僅僅因?yàn)镮nternet Explorer不支持它就將它用作其他大多數(shù)Web應(yīng)用程序。幸運(yùn)的是,對(duì)于移動(dòng)Web開發(fā)人員來說,Canvas沒有這樣的限制。您瞄準(zhǔn)的所有基于Webkit的瀏覽器都能實(shí)現(xiàn)Canvas并極大地優(yōu)化其性能。
Canvas API是一個(gè)低級(jí)畫圖API,它支持創(chuàng)建直線,曲線,矩形和圓圈,并使用彩色,漸變色等填充它們。在Canvas上,您可以創(chuàng)建文本,執(zhí)行多種的幾何轉(zhuǎn)換。可以想見,這樣的API的用途是無限的。我們來看一個(gè)使用Canvas來創(chuàng)建一個(gè)圖形報(bào)告的應(yīng)用程序。圖1展示了該應(yīng)用程序的屏幕截圖:一個(gè)顯示每年結(jié)果的柱狀圖。
圖1.運(yùn)行在Android瀏覽器上的基于Canvas的報(bào)告應(yīng)用程序
運(yùn)行在Android瀏覽器上的基于Canvas的報(bào)告應(yīng)用程序的屏幕截圖
圖1所顯示的不是瀏覽器中的一幅靜態(tài)圖像。這個(gè)報(bào)告圖形是使用這個(gè)Canvas API實(shí)時(shí)生成的。清單1展示了創(chuàng)建這個(gè)報(bào)告的HTML。
清單1.報(bào)告HTML
XML / HTML代碼將內(nèi)容復(fù)制到文本
<!DOCTYPE html >
< html >
<頭>
< meta http-equiv = “ Content-Type”內(nèi)容= “ text / html; charset = UTF-8” >
< meta name = “ viewport” content =“寬度=設(shè)備寬度; 初始比例= 1 .0;
最大比例= 1 .0; 用戶可縮放= 0 ;“ />
< meta name = “ apple-touch-fullscreen”內(nèi)容= “ YES” />
< title > HTML 5報(bào)告 title >
<腳本類型= “ text / javascript” >
函數(shù)init(){
var data = [{year:“ 2007”,sales:49},
{year:“ 2008”,sales:131},
{year:“ 2009”,sales:294},
{year:“ 2010”,sales:405}]];
var report = {x:“年”,
y:“銷售”,
值:數(shù)據(jù)};
圖表(report,350,300);
}
腳本>
頭>
<正文onload = “ init()” >
< canvas id = “ graph” > canvas >
body >
html >
這個(gè)清單展示了基本的HTML結(jié)構(gòu)。這個(gè)文檔的主體擁有一個(gè)單一的canvas標(biāo)記。在init函數(shù)(在文檔主體加載時(shí)調(diào)用)中,您定義的靜態(tài)數(shù)據(jù)(報(bào)告數(shù)據(jù))將其傳遞到圖形函數(shù)。這里將報(bào)告定義為靜態(tài)數(shù)據(jù),但很容易將其想象為使用Ajax通過網(wǎng)絡(luò)動(dòng)態(tài)下載。report函數(shù)包含所有有趣的代碼,我們來看看清單2。
清單2. graph函數(shù)
JavaScript代碼將內(nèi)容復(fù)制到
函數(shù) 圖(報(bào)告,maxWidth,maxHeight){
var data = report.values;
var canvas = document.getElementById(“ graph” );
var axisBuffer = 20;
canvas.height = maxHeight + 100;
canvas.width = maxWidth;
var ctx = canvas.getContext(“ 2d” );
var width = 50;
var buffer = 20;
var i = 0;
var x =緩沖區(qū)+ axisBuffer;
ctx.font = “粗體12px sans-serif” ;
ctx.textAlign = “開始” ;
對(duì)于 (i = 0; i ctx.fillStyle = “ rgba( 0,0,200,0.9 )” ; ctx.fillRect(x,maxHeight-(data [i] [report.y] / 2), 寬度,(data [i] [report.y] / 2)); ctx.fillStyle = “ rgba( 0,0,0,0.9 )” ; ctx.fillText(data [i] [report.x],x +(width / 4),maxHeight + 15); x + =寬度+緩沖區(qū); } //繪制水平軸 ctx.moveTo(axisBuffer,maxHeight); ctx.lineTo(axisBuffer + maxWidth,maxHeight); ctx.strokeStyle = “黑色” ; ctx.stroke(); //繪制垂直軸 ctx.moveTo(axisBuffer,0); ctx.lineTo(axisBuffer,maxHeight); ctx.stroke(); //繪制網(wǎng)格線 var lineSpacing = 50; var numLines = maxHeight / lineSpacing; var y = lineSpacing; ctx.font = “ 10px sans-serif” ; ctx.textBaseline = “中間” ; 對(duì)于 (i = 0; i ctx.strokeStyle = “ rgba(0,0,0,0.25)” ; ctx.moveTo(axisBuffer,y); ctx.lineTo(axisBuffer + maxWidth,y); ctx.stroke(); ctx.fillStyle = “ rgba( 0,0,0,0.75 )” ; ctx.fillText(“” +(2 *(maxHeight -y)),0,y); y + = lineSpacing; } } 在這個(gè)函數(shù)的第一部分中,您建立了創(chuàng)建這個(gè)報(bào)告需要的對(duì)象,尺寸畫布的寬度和高度,填充變量等。您還創(chuàng)建了畫布對(duì)象,因?yàn)檫@是用于進(jìn)行所有實(shí)際畫圖的對(duì)象。然后,您通過迭代報(bào)告數(shù)據(jù),繪制圖1中的柱狀圖。首先,您設(shè)置fillStyle屬性。這就像設(shè)置一個(gè)顏色一樣簡(jiǎn)單,您使用CSS時(shí)也可能會(huì)生成。在本例中,使用rgba標(biāo)記來設(shè)置顏色,以及alpha值(這是顏色的短暫,稍后我們討論奇妙的CSS3世界時(shí)時(shí)引入這個(gè)參數(shù))。設(shè)置fillStyle屬性后,使用fillRect API來為數(shù)據(jù)點(diǎn)創(chuàng)建柱狀圖。此處,您指定這個(gè)矩形,起點(diǎn)(x,y)以及它的高度和寬度。接下來,您重新定義fillStyle,因?yàn)槟氪蛴∫恍┪谋?,作為?bào)告的一部分。您使用fillText API來在畫布上繪制文本。您對(duì)每個(gè)數(shù)據(jù)點(diǎn)都執(zhí)行這個(gè)操作,為每個(gè)數(shù)據(jù)點(diǎn)創(chuàng)建一個(gè)柱狀圖,其下帶有一個(gè)標(biāo)簽。 接下來,您需要重新設(shè)置此圖形的其他部分—尺寸和網(wǎng)格線。首先,放置水平和垂直垂直。對(duì)于每條變量,使用moveTo API來設(shè)置開始直線直線的起點(diǎn)。然后使用lineTo API來從這個(gè)。注意,這并不實(shí)際放置一條直線;相反,您調(diào)用描邊API來替換這條直線。對(duì)齊水平和垂直上方后,放置它們的標(biāo)簽布局網(wǎng)格線,方法是均勻間隔本身,然后使用相同的moveTo,lineTo和stroke組合來繪制這些直線。 這就是以編程方式創(chuàng)建這個(gè)報(bào)告圖形所需的所有代碼。在這個(gè)示例中,您已經(jīng)看到了很多最重要的,也是最常使用的畫布API,但還有其他幾個(gè)API(用作著色曲線) )。您可以使用這些API完成一些令人震驚的任務(wù),這些任務(wù)可以在任何基于Webkit的瀏覽器上完成。如果您的目標(biāo)不是布局圖形,HTML 5仍舊有很多格式為級(jí)聯(lián)樣式表(CSS)3.0的新視覺圖像。 奇妙的CSS3世界 正確的HTML 5,您可能會(huì)馬上想到HTML標(biāo)記。當(dāng)然,HTML 5肯定包含新標(biāo)記,我們將在下一小節(jié)中查看其中的部分新標(biāo)記。在上一小節(jié)中,您看到了如何使用一個(gè) 圖2.移動(dòng)設(shè)備的新CSS功能 比較Android和iPhone移動(dòng)設(shè)備上的新CSS功能的屏幕截圖 圖2在一個(gè)基于Android的設(shè)備和iPhone上展示了許多新CSS功能。左邊的圖像來自一個(gè)基于Android的設(shè)備。它比右邊的圖像尺寸,原因是它來自一個(gè)Motorola Droid,它比對(duì)右邊的圖像的iPhone 3GS擁有的分辨率更高的屏幕。因此,您在Droid上將看到更多的頁面內(nèi)容。但是,您可能會(huì)看到,標(biāo)題“葛底斯堡地址”有一個(gè)倒影,該倒影在iPhone這只是一個(gè)細(xì)節(jié)提醒:即使基于Android的設(shè)備和iPhone都擁有基于Webkit的瀏覽器,但它們之間也也有細(xì)微的差異,因此您在測(cè)試時(shí)必須更加細(xì)心?,F(xiàn)在看一下生成這個(gè)漂亮頁面的代碼(見清單3),首先從頁面頂端開始。 清單3.頁面上半部分的代碼 XML / HTML代碼將內(nèi)容復(fù)制到文本 <!DOCTYPE html > < html > <頭> <腳本類型= “ text / javascript” > 函數(shù)$ {id){ 返回document.getElementById(id); } 函數(shù)init(){ var i = 0 ; var row = {}; var cell = {}; var topic = [“ nth-child”,“ gradients”,“ alpha”,“ text effect”, “反思”,“變革”]; 對(duì)于(i = 0 ; i < topic.length ; i ++){ 行 = 文檔.createElement(“ tr”); 單元格 = 文檔.createElement(“ td”); cell.appendChild(document.createTextNode(topics [i])); row.appendChild(cell); $(“ dtable”)。appendChild(row); } } 腳本> <樣式類型= “ text / css” > 標(biāo)頭 > h2 { 顏色:黃色; 背景:-webkit-gradient(線性,左上,左下, 從(藍(lán)色)到(白色)) } tr:nth-child(4n + 1){顏色:海軍;} tr:nth-child(4n + 2){顏色:綠色;} tr:nth-child(4n + 3){顏色:栗色;} tr:nth-child(4n + 4){顏色:紫色;} 輸入[ type = “ text” ] { 背景:rgba(150,30,30,0.5); } style > 頭> <正文onload = “ init()” > <標(biāo)題> < h2 > CSS3的世界 h2 > < div >您的瀏覽器支持哪種CSS3? div > 標(biāo)頭> < table id = “ dtable” > table > < div id = “ formSection” > <標(biāo)簽為= “ name” >您叫什么名字?標(biāo)簽> <輸入類型= “文本” id = “名稱” > 輸入> < button id = “ rtBtn” onclick = “ rotate()” >旋轉(zhuǎn) button > div > body > html > 清單3中的代碼替換標(biāo)題“ Gettysburg Address”上方的所有UI。您將稍后看到此頁面的下半部分的代碼。 首先應(yīng)該檢查頁面標(biāo)題。如果您查看清單3底部附近的HTML頁面主體,您將看到這個(gè)標(biāo)題實(shí)際上位于一個(gè)header標(biāo)記中—這是HTML 5中一個(gè)一個(gè)新的HTML元素。 現(xiàn)在看看style元素(位于清單3中的HTML主體上方)。這個(gè)文本 的樣式使用帶有選擇器標(biāo)頭> h2的CSS設(shè)置。此規(guī)則將文本顏色設(shè)置為黃色,同時(shí)將其背景設(shè)置為藍(lán)色和白色。背景應(yīng)用有梯度。這是您看到的前綴為-webkit的CSS特性的首個(gè)示例。您可能會(huì)出錯(cuò),這個(gè)指向使這個(gè)CSS專為Webkit的瀏覽器。但是,在眾多情況下,這些情況是CSS 3.0標(biāo)準(zhǔn)的一部分,但它們本身在這個(gè)標(biāo)準(zhǔn)中還在不斷微小變化的部分。大量情況下,Webkit瀏覽器和基于Mozilla Firefox的瀏覽器都已經(jīng)實(shí)現(xiàn)了這些特性。如果您的開發(fā)也需要針對(duì)Mozilla瀏覽器(Firefox的移動(dòng)版本Fennec,該版本在歐洲的諾基亞智能手機(jī)上迅速流行起來),那么您通常可以將-webkit逐步更改為-moz。 如圖2所示,當(dāng)您顯示該表的內(nèi)容時(shí),相鄰兩行的顏色各不相同。這個(gè)任務(wù)使用下一個(gè)CSS部分— tr:nth -child聲明—來完成??梢栽谌我庵貜?fù)的元素上使用nth-child聲明。您傳遞一個(gè)使用謂詞的公式,檢查它是否是一個(gè)有效的元素規(guī)則。在本例中,您聲明表單行號(hào)為4n + 1(1、5、9,等等)的行的顏色為海軍藍(lán),表單行號(hào)為4n + 2(2、6、10,等等)的行的顏色為綠色,以此類推,其余過去,您經(jīng)常需要對(duì)表,列表等組件實(shí)現(xiàn)類似的視覺效果,但通常是通過繁瑣的JavaScript來實(shí)現(xiàn)。 最后的視覺元素是紅色的文本分支,帶有標(biāo)簽 和文本按鈕旋轉(zhuǎn)。這個(gè)文本字段的紅色是使用一個(gè)特定于類型的輸入選擇器實(shí)現(xiàn)的。換句話說,這是一個(gè)CSS規(guī)則,只適用于類型為text的輸入元素?,F(xiàn)在,您可能想知道Rotate Button到底作用何在?看看清單4中的代碼就明白了,該代碼調(diào)用一個(gè)稱為rotate的函數(shù)。 清單4.使用CSS的JavaScript rotation函數(shù) JavaScript代碼將內(nèi)容復(fù)制到 函數(shù) rotate(){ $(“ formSection” ).style [ “ -webkit-transform” ] = “ rotateZ(-5deg)” ; $(“ formSection” ).style [ “ -webkit-transition” ] = “ -webkit-transform 2s輕松輸入輸出” ; $(“ rtBtn” ). innerHTML = “撤消” ; $(“ rtBtn” ).onclick = function (){ $(“ formSection” ).style [ “ -webkit-transform” ] = “” ; $(“ rtBtn” ). innerHTML = “旋轉(zhuǎn)” ; $(“ rtBtn” ). setAttribute (“ onclick” , “ rotate()” ); } } 這個(gè)旋轉(zhuǎn)函數(shù)使用JavaScript來更改應(yīng)用到稱為formSection的div的CSS。(注意:您正在將$()使用document.getElementById()的一個(gè)別名。)要旋轉(zhuǎn)這個(gè)div,將它的-webkit-transform樣式設(shè)置為rotateZ(-5deg),將其逆時(shí)針旋轉(zhuǎn)5度。然后,將-webkit-transform樣式設(shè)置為-webkit-transform 2s easy-in-out。這使旋轉(zhuǎn)耗時(shí)兩秒鐘,緩慢啟動(dòng),加速,然后在最后再次減速。在圖3中,左邊顯示您叫什么名字?平行旋轉(zhuǎn)之前的初始位置;右邊顯示該分支部分旋轉(zhuǎn)后的視覺效果及其撤消按鈕。 圖3.旋轉(zhuǎn)HTML元素 在一個(gè)移動(dòng)設(shè)備上旋轉(zhuǎn)HTML元素的屏幕截圖 參見參考資料中的鏈接查看這個(gè)效果在Chrome,Safari 4和Opera等兼容HTML 5的瀏覽器上的實(shí)際運(yùn)行情況。 現(xiàn)在我們轉(zhuǎn)到圖2中的頁面的下半部分。這里您看到幾個(gè)有趣的圖像,文本效果以及布局示例。清單5顯示了相關(guān)代碼。 清單5.圖2的下半部分代碼 XML / HTML代碼將內(nèi)容復(fù)制到文本 <!DOCTYPE html > < html > <頭> <樣式類型= “ text / css” > h3 { -webkit-text-fill-color:藍(lán)色; -webkit-text-stroke-color:黃色; -webkit-text-stroke-width:1.5px; 背景:-webkit-gradient(radial,430 50,0,430 50,200,from(red), 到(#000)); -webkit-box-reflect:5px以下-webkit-gradient(線性,左上,左 底部,從(透明),色標(biāo)(0.5,透明),到(白色)); } h4 { 顏色:rgba(0,0,255,0.75); 背景:rgba(255,255,0,0.5); } .xyz { 文字陰影:#6374AB 4px -4px 2px; 空白:nowrap; 寬度:14em; 高度:2em; 溢出:隱藏; 文字溢出:省略號(hào); 邊框:1px實(shí)線#bbb; border-radius:9px; 背景顏色:#fff; } .abc { 邊框:1px實(shí)線#000; border-radius:9px; -webkit-column-count:4; -webkit-column-rule:1px solid#a00; -webkit-column-gap:0.75em; } style > 頭> <正文onload = “ init()” > < h3 >葛底斯堡地址 h3 > < h4 >賓夕法尼亞州葛底斯堡,亞伯拉罕·林肯。1863年11月19日 h4 > < div class = “ xyz” > 四分制和七年前,我們的父親在這方面提出了 大洲一個(gè)自由自由孕育并致力于 人人平等創(chuàng)造的主張。 div > < div class = “ abc” > 現(xiàn)在我們正在進(jìn)行一場(chǎng)內(nèi)戰(zhàn),測(cè)試是否 民族,或任何一個(gè)如此懷念,如此敬業(yè)的國(guó)家, 忍受。我們?cè)谀菆?chǎng)戰(zhàn)爭(zhēng)的偉大戰(zhàn)場(chǎng)上相遇。我們有 來奉獻(xiàn)該領(lǐng)域的一部分,作為最后的休息 在這里獻(xiàn)出生命的那個(gè)人那個(gè)國(guó)家可能 生活。我們應(yīng)該這樣做完全合適和適當(dāng)。 div > body > html > 我們來逐個(gè)看看這個(gè)代碼中的元素。首先,為“葛底斯堡演說”創(chuàng)建了一個(gè)標(biāo)題,并以幾種方式設(shè)置其樣式。 使用-webkit-text-fill-color,-webkit-text-stroke-color和-webkit-text-stroke-width樣式來創(chuàng)建“黃中帶藍(lán)”的效果。 通過設(shè)置背景樣式-webkit-gradient來在文本后面放置一個(gè)紅色黑色背景。注意,這是一個(gè)放射狀排列,而導(dǎo)致您看到的是一個(gè)線性漸變。這兩種在智能手機(jī)上的效果都很好。 通過設(shè)置-webkit-box-reflect樣式對(duì)標(biāo)題應(yīng)用一個(gè)倒影。設(shè)置這個(gè)樣式以在標(biāo)題下方5個(gè)位置處反射標(biāo)題,反向倒影應(yīng)用一個(gè)漸變效果。這里的效果使倒影看起來好像正在淡出。如果回顧一下圖2,您將看到,Android瀏覽器不支持這個(gè)對(duì)倒影應(yīng)用一個(gè)漸變的組合:它只是呈現(xiàn)不帶任何排序的倒影。 繼續(xù)移動(dòng)到下一個(gè)標(biāo)題,對(duì)它應(yīng)用一個(gè)非常簡(jiǎn)單的樣式:文本一種顏色,背景另一種顏色。這兩種顏色都使用rgba函數(shù)來指定“紅-綠-藍(lán)”值,以及一個(gè)alpha亮度值。值1.0完全不透明,值0.0則為透明。 清單5中的下一部分是此處短文的第一段。文本周圍有一個(gè)邊界,您使用新的border-radius樣式來實(shí)現(xiàn)4個(gè)圓角。現(xiàn)在,您在網(wǎng)站上到處都能看到這樣的圓角,它們通常使用圖像來實(shí)現(xiàn)。與使用CSS 3.0來實(shí)現(xiàn)命名,這種方法真是太老土了。通過使用text-shadow樣式來向這個(gè)這一文本的一個(gè)文本應(yīng)用一個(gè)陰影。最后,注意區(qū)域受到了影響父div的高度和寬度的限制,文本太大了。與在一些較老的瀏覽器中看到的那樣直接截取文本相反,通過設(shè)置text-overflow樣式可以看到一個(gè)省略的省略號(hào)(...)效果。 最后,來到文本的最后部分。它的周圍也有一個(gè)邊界,但是注意,它出現(xiàn)在4個(gè)帶有列分隔符的列中。變量,設(shè)置-webkit-column-count樣式,并設(shè)置配套的- webkit-column-rule樣式來獲取這些分隔符??梢韵胍姡绻麤]有這些新的CSS 3.0特性,像這樣的格式化文本將會(huì)是多么的繁瑣!當(dāng)您創(chuàng)建簡(jiǎn)單的headers和footer(它們同時(shí)也是HTML 5中的新元素)時(shí),這也可能是一個(gè)很有用的特性??匆幌滤鼈円约坝蒆TML 5約會(huì)的其他一些新標(biāo)記。 新語義 HTML 5向HTML標(biāo)記添加了許多新元素。其中一些元素將導(dǎo)致引導(dǎo)瀏覽器提供一些新的呈現(xiàn)處理。其他一些元素將添加一些稍后可以通過JavaScript變得可用的額外特性。但是,另一些元素則不這些與, 看起來一樣,并且擁有相同的編程接口。但是,它們將添加額外的語義含義。這些新語義針對(duì)頁面的非視覺用戶(這些新標(biāo)記還向開發(fā)人員提供了一些鏈接,幫助他們編寫表現(xiàn)力更強(qiáng)的CSS選擇器。圖4展示了包括使用屏幕閱讀器這樣的輔助技術(shù)的用戶)和搜索引擎爬蟲這樣的計(jì)算機(jī)程序很重要。一個(gè)使用一些新語義元素的網(wǎng)頁。 圖4. iPhone上的一些新HTML 5元素 iPhone上的新HTML 5元素標(biāo)題,導(dǎo)航,文章,部分以及一旁的屏幕截圖 圖4中的這個(gè)示例擁有一個(gè)header元素,幾個(gè)nav元素,一個(gè)article元素,一個(gè)section元素以及以及一個(gè)side元素。這些元素不會(huì)導(dǎo)致任何特殊呈現(xiàn)。它們只是添加語義值,您可以使用它們來編寫圖4中顯示的圖片的代碼如清單6所示。 清單6. HTML 5中的新語義元素 XML / HTML代碼將內(nèi)容復(fù)制到文本 <!DOCTYPE html > < html > <頭> < meta http-equiv = “ Content-Type”內(nèi)容= “ text / html; charset = UTF-8” > < meta name = “ viewport” content =“寬度=設(shè)備寬度; 初始比例= 1 .0; 最大比例= 1 .0; 用戶可縮放= 0 ;“ /> < meta name = “ apple-touch-fullscreen”內(nèi)容= “ YES” /> < title >獲取最新標(biāo)記 title > 頭> <身體> <標(biāo)頭樣式= “邊框:1px點(diǎn)#000;邊框半徑:3px;” > < hgroup align = “中心” > < h2 >實(shí)際文檔具有標(biāo)題 h2 > < h3 >即使他們不這么說 h3 > hgroup > < hgroup > < nav style = “ -webkit-column-count:3; -webkit-column-rule:1px solid#a00;” > <一個(gè)HREF = “新css.html” > CSS3 一> < BR /> <一個(gè)HREF = “Report.htm1”進(jìn)行>畫布一> < BR /> <一個(gè)HREF = “elements.html” >標(biāo)記一> 導(dǎo)航> hgroup > 標(biāo)頭> <文章> < h2 > HTML5中有很多新的標(biāo)記元素 h2 > <時(shí)間日期時(shí)間= “2010-05-16” pubdate的>星期日,5月16日時(shí)間> <部分>您是否注意到我們只有兩個(gè)H1? 但這很酷!部分> < aside style = “空白:nowrap;溢出:隱藏;文本溢出:省略號(hào);” > 如果此頁面真的很受歡迎,我會(huì)在這里放一個(gè)廣告并制作一些 大量現(xiàn)金 一旁> article > body > html > 注意,您還應(yīng)用了一些新的CSS樣式來在header周圍創(chuàng)建了一個(gè)圓角框,并為nav創(chuàng)建了幾個(gè)分隔符。您還在旁邊使用了文本溢出樣式。這里的關(guān)鍵點(diǎn)是:無需額外的工作,您就可以創(chuàng)建更重疊的標(biāo)記,然后,您可以像使用了 圖5.在iPhone上使用HTML 5創(chuàng)建的表單 在iPhone上使用HTML 5表單元素創(chuàng)建的幾個(gè)表單的屏幕截圖 圖5中的屏幕使用了在HTML 5中可用的許多新表單元素。在很多情況下,這些元素看起來就像現(xiàn)有的元素,但您可以期望瀏覽器添加這些更豐富的表單元素的更好的視覺表示。為展示大致效果,圖6顯示了上述表單元素在Opera桌面瀏覽器中的效果。(查看圖6的文本版本。) 圖6. Opera的HTML 5表單元素 Opera上使用HTML 5表單元素創(chuàng)建的幾個(gè)表單的屏幕截圖 Opera,一直是實(shí)現(xiàn)HTML 5特性的先行者,這對(duì)于新的表單元素而言尤其如此?,F(xiàn)在,看看生成清單4和清單5的代碼,更好地理解Opera之所以采用其呈現(xiàn)方式的原因。清單7顯示了這個(gè)代碼。 清單7.代碼形式的HTML 5表單元素 XML/HTML Code復(fù)制內(nèi)容到剪貼板