一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

揭秘HTML 5和CSS3 Web實(shí)現(xiàn)飛躍的踏板

  互聯(lián)網(wǎng)的發(fā)展總是在不斷地催生新技術(shù)的產(chǎn)生,而HTML 5和CSS 3是最近一直被討論的熱門話題,關(guān)于HTML 5與Flash之間的唇槍舌戰(zhàn)一直不斷,而CSS 3的新功能也讓人們備受期待。那么HTML 5和CSS3究竟有哪些讓我們眼前一亮的東西呢?

HTML 5草案的前身名為Web Applications 1.0,于2004年被WHATWG提出,于2007年被W3C接納,并成立了新的HTML工作團(tuán)隊(duì)。在2008年1月22日,第一份正式草案發(fā)布。 HTML 5是近十年來Web開發(fā)標(biāo)準(zhǔn)最巨大的飛躍。和以前的版本不同,HTML 5并非僅僅用來表示W(wǎng)eb內(nèi)容,它的新使命是將Web帶入一個(gè)成熟的應(yīng)用平臺(tái),在HTML 5平臺(tái)上,視頻,音頻,圖象,動(dòng)畫,以及同電腦的交互都被標(biāo)準(zhǔn)化。那么我們來看一下HTML 5的技術(shù)概覽有哪些:

  HTML 5的Javascript API,HTML 5在Javascript上面新增了哪些API呢?

  Video/Audio: HTML 5為Video和Audio提供了API來讓開發(fā)者控制他們自己的用戶界面,如可以播放或暫停媒體內(nèi)容。

  Canvas:Canvas是一個(gè)新的HTML元素,這個(gè)元素可以被Script語言(通常是JavaScript)用來繪制圖形。例如可以用它來畫圖、合成圖象、或做簡單的(和不那么簡單的)動(dòng)畫。Canvas是一個(gè)神奇的東西,它給我的第一感覺就像是在用Photoshop一樣,它的每一個(gè)方法跟Photoshop是那么地相似,通過canvas.getContext(’2d’)就可以得到這個(gè)canvas的API,你可以通過fillStyle設(shè)置其填充顏色或是通過strokeStyle設(shè)置其描邊顏色,甚至它畫路徑的操作跟Photoshop的鋼筆操作更是不謀而合。Canvas在很多網(wǎng)站都已經(jīng)有應(yīng)用,如Firefox的實(shí)時(shí)下載狀態(tài)統(tǒng)計(jì),甚至還可以用canvas來編寫Web Game。

  Drag&Drop:在指示設(shè)備的視覺媒體中,”Drag”的操作就是鼠標(biāo)按下(mousedown)并伴隨著鼠標(biāo)移動(dòng)(mousemove)的事件,而”Drop”則是鼠標(biāo)釋放時(shí)觸發(fā)的事件。在Drag&Drop里定義了DataEvent和DataTransfer接口,同時(shí)當(dāng)拖拽操作發(fā)生時(shí)會(huì)觸發(fā)如dragstart, dragenter, dragleave, drop, dragend等事件。

  Web Workers: 讓Javascript多線程,可以在后臺(tái)做很多工作而不會(huì)阻斷當(dāng)前的瀏覽器操作。

  Geolocation:地理位置定位,運(yùn)行navigator.geolocation.getCurrentPosition(success,error)這個(gè)方法時(shí)瀏覽器會(huì)提示是否要共享你的地理位置,如果選擇共享,則會(huì)回調(diào)success函數(shù),success函數(shù)有一個(gè)參數(shù)是position對(duì)象,這個(gè)position對(duì)象有一個(gè)coords對(duì)象,coords對(duì)象包含了很多地理位置信息如latitude(維度)和longitude(經(jīng)度),這樣就可以知道你的具體位置了,這個(gè)功能在一些手機(jī)如Iphone上已經(jīng)有廣泛的應(yīng)用了。

  Application Cache:這是HTML5對(duì)于離線應(yīng)用的支持,通過在html元素上加一個(gè)屬性manifest,瀏覽器會(huì)提示你是否要將數(shù)據(jù)緩存到客戶端,如果用戶選擇了允許,則會(huì)按照指定的manifest文件列表緩存需要的文件,當(dāng)你的網(wǎng)絡(luò)不可用時(shí),你還是可以使用這個(gè)應(yīng)用的。對(duì)于離線應(yīng)用,Google也開發(fā)了GoogleGears瀏覽器擴(kuò)展,不過最后Google轉(zhuǎn)投HTML5可能也是看到了HTML5存儲(chǔ)和離線應(yīng)用的這種優(yōu)勢。

  Storage: Webkit已經(jīng)實(shí)現(xiàn)了databasestorage,你可以像后端操作數(shù)據(jù)庫一樣查詢數(shù)據(jù)并執(zhí)行一些操作。還有一種存儲(chǔ)是鍵值對(duì)存儲(chǔ),如sessionStorage和localStorage,可以通過setItem和getItem來存儲(chǔ)與獲取值,相對(duì)于Cookie的存儲(chǔ)來說,存儲(chǔ)的容量要大很多。

  X-Document Messaging:瀏覽器因?yàn)榘踩碗[私的原因,阻止了不同域之間文檔的通信,雖然這是一個(gè)安全限制,但是對(duì)于那些沒有危害的不同域的文檔通信帶來了很多問題,但是HTML5可以實(shí)現(xiàn)這種跨文檔通信,讓我們可以不用管源域是來自哪里,同時(shí)可以防止腳本攻擊。

  CSS3對(duì)于我們Web開發(fā)者來說不只是新奇的技術(shù),更重要的是這些全新概念的web應(yīng)用給我們帶來更多無限的可能性,也極大地提高了我們的開發(fā)效率。我們將不必再依賴圖片或者Javascript去完成圓角、多背景、用戶自定義字體、3D動(dòng)畫、漸變、盒陰影、文字陰影、透明度等提高Web設(shè)計(jì)質(zhì)量的特色應(yīng)用

  CSS3在選擇器上面的支持利用屬性選擇器我們可以根據(jù)屬性值的開頭或結(jié)尾很容易選擇某個(gè)元素,利用兄弟選擇器可以選擇同級(jí)兄弟結(jié)點(diǎn)或緊鄰下一個(gè)結(jié)點(diǎn)的元素,利用偽類選擇器可以選擇某一類元素,CSS3在選擇器上的豐富支持讓我們可以靈活的控制樣式,而不必為了選擇某些元素給他們加上如”odd”或”even”這樣的類名。

  CSS3在樣式上的支持有一個(gè)調(diào)查說開發(fā)者最期待CSS3的特性是什么,最后票數(shù)最多的是“圓角”,不錯(cuò),圓角這個(gè)功能可以給我們這些前端工程師省去很多時(shí)間和精力去切圖拼湊一個(gè)圓角。CSS3還支持陰影,盒陰影以及文本陰影,漸變,之前你可能是通過IE的濾鏡看到過,其實(shí)CSS3實(shí)現(xiàn)起來更加方便。@font-face可以自定義字體,如果用傳統(tǒng)的方式,VD把一個(gè)帶有特殊文字的設(shè)計(jì)圖給你讓你來實(shí)現(xiàn)的話你可能會(huì)把它做成一個(gè)圖片,而通過CSS3用@font-face就可以了。

  CSS3對(duì)于連續(xù)文本換行也新增了一個(gè)屬性word-wrap,你可以設(shè)置其為normal(不換行)或break-word(換行),這解決了連續(xù)英文字符出現(xiàn)頁面錯(cuò)位的問題,也不需要后端去截取這個(gè)連續(xù)字符。使用CSS3你還可以給邊框加背景,這在iphone上也有應(yīng)用的例子。CSS3在背景上支持背景調(diào)整大小,如當(dāng)你用一張大圖要做一個(gè)小的元素背景時(shí)可以通過background-size來調(diào)整背景圖的大小來適應(yīng)這個(gè)元素。

  CSS3支持opacity, rgba和hsl/a,opacity和rgba的區(qū)別是opacity設(shè)置的透明對(duì)其內(nèi)容也會(huì)產(chǎn)生影響,而rgba只對(duì)你應(yīng)用的元素產(chǎn)生影響。CSS3在布局上對(duì)于盒模型提供了支持,可以設(shè)置box-sizing為content-box或border-box,應(yīng)用為content-box就是正常的模式,而應(yīng)用為border-box和IE5.5的盒模型很相似,即元素的寬度包括border和padding,這個(gè)在布局上可能會(huì)比較方便,不用去管到底這個(gè)元素會(huì)占用多大的寬度,而用content-box還需要手動(dòng)計(jì)算一下這個(gè)元素實(shí)際占用的寬度。

CSS3對(duì)于動(dòng)畫的支持CSS3支持的動(dòng)畫類型有:transform(變換)、transition(過渡)和animation(動(dòng)畫)。你可以對(duì)特定的屬性設(shè)置transition,transiton和animation的區(qū)別不大,animation的動(dòng)畫是自己定義的,面向的更多的是腳本開發(fā)者,往往更加復(fù)雜。

  為了使用大部分CSS3特性,我們不得不與原來的屬性一起使用生產(chǎn)商專有擴(kuò)展。原因是直到現(xiàn)在,大部分瀏覽器只支持部分CSS3屬性。最常見的私有屬性是用于Webkit核心瀏覽器的(比如, Safari), 它們以-webkit-開始,以及Gecko核心的瀏覽器(比如,Firefox),以-moz-開始,還有Konqueror (-khtml-)、Opera (-o-) 以及InterNET Explorer(-ms-)都有它們自己的屬性擴(kuò)展(目前只有IE8支持-ms-前綴)。

  那我們在開發(fā)中該如何去用CSS3呢?我覺得首先是遵循一個(gè)優(yōu)雅降級(jí)的原則,比如前面談到的圓角,我們可以針對(duì)Firefox和Safari等這些支持圓角的瀏覽器中應(yīng)用CSS圓角,而那些不支持CSS圓角的瀏覽器則顯示為直角。其次就是對(duì)于不支持CSS3的瀏覽器可以使用Javascript來實(shí)現(xiàn),如CSS3任何元素支持:hover偽類,我們就可以對(duì)只支持鏈接:hover的IE6用JS來實(shí)現(xiàn)。最后就是在向用戶或老板推廣新技術(shù)的同時(shí)也要關(guān)注他們的目標(biāo)與可行性,不能為了技術(shù)而技術(shù)。

it知識(shí)庫揭秘HTML 5和CSS3 Web實(shí)現(xiàn)飛躍的踏板,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: swag国产精品 | 快射视频欧美 | 欧美一级做一级做片性十三 | 国产51社区精品视频资源 | 国产精品第一页在线 | 奇米色吧 | 亚洲一区二区免费 | 国产成人香蕉在线视频网站 | 91在线播放国产 | 99国产精品免费观看视频 | 婷婷97狠狠的狠狠的爱 | 久久国 | 在线观看国产黄色 | 精品国产免费第一区二区三区日韩 | 欧美激情视频网站 | 五月天久草 | 国产在线观看黄色 | 一区二区精品在线观看 | 激情文学首页 | 天天干天天干天天 | 97国产成人精品免费视频 | 免费精品一区二区三区在线观看 | 国产一区曰韩二区欧美三区 | 色天天天天 | 欧美日韩亚洲一区二区三区 | 麻豆国产精品视频 | 成人一级免费视频 | 狠狠色狠狠色综合伊人 | 97国产成人精品视频 | 国产精品亚洲高清一区二区 | 欧美激情精品久久久久久大尺度 | 亚洲伊人久久一次 | 天天添天天操 | 色播亚洲精品网站 亚洲第一 | 国产美女激情视频 | 欧洲在线视频 | 国产精品久久九九 | 一级做a爰片久久毛片人呢 一级做a爰片久久毛片图片 | 337q日本大胆欧美人术艺术 | 中文字字幕码一二区 | 亚洲视频在线一区二区三区 |