?HTML5 簡史和響應(yīng)式網(wǎng)站設(shè)計(jì)
HTML 在剛誕生的前 10 年發(fā)展是非常迅速的,在 1999 年,我們現(xiàn)在常說的 HTML5 的上一個(gè)版本 HTML4.0.1 就已經(jīng)發(fā)布了,那么為什么從 4.0 到 5.0 會(huì)拖了 15 年之久?
?
首先,HTML4 的發(fā)布時(shí)間和門戶時(shí)代(即 Web 1.0 時(shí)代)是基本吻合的,也就是說 HTML4 實(shí)際上是為門戶型網(wǎng)站設(shè)計(jì)的。在門戶網(wǎng)站經(jīng)歷的 4,5 的年發(fā)展之后,大家開始覺得只是單一接受信息的互聯(lián)網(wǎng)太過無聊枯燥了,差不多 2004、2005 年開始,大家希望在網(wǎng)頁中加入更多的互動(dòng)元素,也就是我們常說的 Web 2.0。
但是這個(gè)時(shí)候大家發(fā)現(xiàn),為 Web 1.0 設(shè)計(jì)的 HTML4 無法勝任這個(gè)工作,但是有另外一個(gè)技術(shù)卻非常適合,那就是 Flash。所以在 Web 2.0 的早期,當(dāng)時(shí)最炫酷的網(wǎng)站有很多是完全用 Flash 開發(fā)的,在以后的很長一段時(shí)間里,有很多網(wǎng)站都是 HTML 和 Flash 的混合式網(wǎng)站。所以在 2005 - 2010 年這段時(shí)間,HTML5 中的新標(biāo)準(zhǔn)主要是為了取代 Flash。
剛剛搞定了 Flash,又進(jìn)入了移動(dòng)開發(fā)時(shí)代,所以 HTML5 又花了 5 年時(shí)間制定各種針對(duì)移動(dòng)平臺(tái)的標(biāo)準(zhǔn)。但是到目前為止,雖然 HTML5 已定定稿,但是對(duì)移動(dòng)平臺(tái)的適應(yīng)其實(shí)還在進(jìn)行中,所以在未來很長一段時(shí)間內(nèi),就像當(dāng)初的 Flash 一樣,我們會(huì)看到越來越多的混合式應(yīng)用。
在 iPhone 出現(xiàn)之前,大家訪問 Web 的主要方式還是通過桌面瀏覽器,所以設(shè)計(jì)網(wǎng)頁時(shí)只要考慮桌面瀏覽器的顯示效果就足夠了。但是在 iPhone 和 iPad 出現(xiàn)之后,就需要考慮同一個(gè)網(wǎng)頁在不同設(shè)備上的顯示效果,第一個(gè)問題的答案就是響應(yīng)式,響應(yīng)式的核心就是讓同一個(gè)網(wǎng)頁可以在不同設(shè)備上呈現(xiàn)出不同的顯示效果,主要是通過CSS來實(shí)現(xiàn)的。
除了響應(yīng)式設(shè)計(jì),HTML 在移動(dòng)端遇到的另外兩個(gè)問題就是如何利用移動(dòng)設(shè)備的各種傳感器,比如 GPS,攝像頭等等;以及性能問題。為了解決這些問題,HTML5中添加了地理位置,拍照,3D 動(dòng)畫加速等等 API,可以部分的利用手機(jī)設(shè)備的一些新硬件,并且新的 API 還在不斷的加入進(jìn)來,這也是為什么現(xiàn)在的 HTML5 應(yīng)用可以越來越炫酷的原因。但是,HTML5 并不是專為移動(dòng)設(shè)備設(shè)計(jì)的,它是由 HTML5,CSS3 以及大量的 Javascript API 共同組成的一個(gè)標(biāo)準(zhǔn)合集,微信中的 HTML5 應(yīng)用只是 HTML5 應(yīng)用場景中的很小一部分。