自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Jeremy Keith談HTML5設(shè)計(jì)原則

開發(fā) 后端 開發(fā)工具
HTML5 是近十年來 Web 標(biāo)準(zhǔn)最巨大的飛躍,它非常龐大,但是仍處在開發(fā)階段。本文介紹的是Jeremy Keith談HTML5設(shè)計(jì)原則,讓我們一起來看。

4月17日,在由InfoQ獨(dú)家社區(qū)支持的上海“擁抱HTML5”活動(dòng)上,***次來到中國(guó)的《JavaScript DOM編程藝術(shù)》和《HTML5 For Web Designer》作者Jeremy Keith與大家一起回顧了HTML的發(fā)展歷程,分享了HTML5的設(shè)計(jì)原則,并與在場(chǎng)與會(huì)者做了精彩互動(dòng)。

首先,Jeremy回顧了HTML的歷史,從HTML 2.0到XHTML 2.0,此處他引用了Postel法則(魯棒性原則):

對(duì)自己發(fā)送的東西要嚴(yán)格,對(duì)接收的東西則要寬容。指出XHTML 2.0由于語法解析過于嚴(yán)格,因此不太適合于Web。

Jeremy認(rèn)為所有的項(xiàng)目都應(yīng)該有設(shè)計(jì)原則,HTML5也同樣如此,W3C就為此發(fā)布了HTML設(shè)計(jì)原則,他強(qiáng)調(diào)了其中的兼容性、實(shí)用性與互操作性。

1、避免不必要的復(fù)雜性

Jeremy舉了DOCTYPE的例子,表示HTML 4.01和XHTML中的DOCTYPE過于冗長(zhǎng),連自己都記不住這些內(nèi)容,但在HTML5中只需要簡(jiǎn)單的<!DOCTYPE html>就可以了。DOCTYPE是給驗(yàn)證器用的,而非瀏覽器,瀏覽器只在做DOCTYPE切換時(shí)關(guān)注這個(gè)標(biāo)簽,因此并不需要寫得太復(fù)雜。然后,他又提到如何指定字符集,在HTML5中只需要<meta charset="utf-8">。

規(guī)范也許會(huì)寫得十分復(fù)雜,但瀏覽器的實(shí)現(xiàn)卻可能很簡(jiǎn)單,規(guī)范有時(shí)會(huì)去遷就瀏覽器的實(shí)現(xiàn)。

2、支持已有內(nèi)容

XHTML 2.0***的問題就是不支持已經(jīng)存在的內(nèi)容,這違反了Postel法則?,F(xiàn)實(shí)情況中,開發(fā)者可以寫出各種風(fēng)格的HTML,瀏覽器遇到這些代碼時(shí),在內(nèi)部所構(gòu)建出的結(jié)構(gòu)應(yīng)該是一樣的,呈現(xiàn)的效果也應(yīng)該是一樣的。

3、解決實(shí)際問題

規(guī)范應(yīng)該去解決現(xiàn)實(shí)中實(shí)際遇到的問題,而不該考慮那些復(fù)雜的理論問題。例如,既然有在<a>中嵌套多個(gè)段落標(biāo)簽的需要,那就讓規(guī)范支持它。

4、用戶怎么使用的,就怎么設(shè)計(jì)規(guī)范

當(dāng)一個(gè)實(shí)踐已經(jīng)被廣泛接受時(shí),就應(yīng)該考慮將它吸納進(jìn)來,而不是禁止它或搞一個(gè)新的實(shí)踐出來。

例如,HTML5中新增了nav、section、article及aside標(biāo)簽,它們引入了新的文檔模型,即文檔中的文檔。在section中,還可以嵌套h1到h6的標(biāo)簽,這樣就有了無限的標(biāo)題層級(jí),這也是很早之前Tim Berners Lee所設(shè)想的。

5、優(yōu)雅地降級(jí)

Jeremy在此處舉了input的例子,HTML5中input標(biāo)簽的type屬性增加了很多類型,當(dāng)瀏覽器不支持這些類型時(shí),默認(rèn)會(huì)將其視為text。這就是一種優(yōu)雅降級(jí)。

此外,在談到HTML5與Flash之爭(zhēng)時(shí),他認(rèn)為很多情況下,這就是<video>和<object>的問題,完全沒有必要二者選其一??梢韵仁褂?lt;video>,當(dāng)瀏覽器不支持時(shí)降級(jí)到<object>,反之亦然。如果瀏覽器對(duì)兩者都不支持,再降級(jí)到<a>,提供一個(gè)鏈接。

6、支持的優(yōu)先級(jí)

在考慮優(yōu)先級(jí)時(shí),應(yīng)該按照這個(gè)順序:

用戶 > 編寫HTML的開發(fā)者 > 瀏覽器廠商 > 規(guī)范制定者 > 理論

用戶與開發(fā)者的重要性要遠(yuǎn)遠(yuǎn)高于規(guī)范和理論。

在***的問答環(huán)節(jié)中,有人提到了HTML5的語法過于靈活,會(huì)造成一定的濫用,Jeremy表示贊同,并推薦使用類似JavaScript Lint的工具來幫助編寫更好的代碼。

此外,有人擔(dān)心<video>外觀的可定制性不強(qiáng),控件不美觀,可能會(huì)重蹈<select>的覆轍。Jeremy當(dāng)場(chǎng)演示了一個(gè)通過CSS定制樣式的<video>,并表示如果不喜歡瀏覽器提供的控件,完全可以實(shí)現(xiàn)自己的控件。

HTML5已不再遙遠(yuǎn),不必等到規(guī)范成熟后才去使用,各個(gè)主流瀏覽器均已紛紛支持HTML5中的一些特性,大家可以從現(xiàn)在開始,擁抱HTML5。您又是怎么看待HTML5的呢?

【編輯推薦】

  1. 深入剖析HTML5表單
  2. 技術(shù)專題:HTML5酷炫特性揭秘
  3. 淺談ASP.NET 4中構(gòu)造HTML5視頻控件
  4. 10個(gè)令人驚奇的HTML5和JavaScript效果
責(zé)任編輯:于鐵 來源: InfoQ
相關(guān)推薦

2011-03-08 10:15:08

HTML 5

2014-10-21 17:34:11

HTML5移動(dòng)設(shè)計(jì)

2013-01-24 10:26:04

HTML5HTML 5HTML5的未來

2011-05-12 16:01:51

HTML5

2011-05-13 17:36:05

HTML

2013-10-21 15:24:49

html5游戲

2011-03-03 17:03:53

HTML5手機(jī)游戲Flash

2012-07-19 09:55:10

HTML5

2011-05-12 15:42:16

HTML5

2017-01-03 18:09:33

HTML5本地存儲(chǔ)Web

2011-05-13 17:41:40

2011-01-14 17:53:33

HTML5cssweb

2023-03-16 09:00:00

HTML5HTML語言

2012-07-02 14:32:22

HTML5

2013-03-22 08:59:57

HTML5移動(dòng)應(yīng)用Web App

2014-03-20 10:50:44

HTML5 定位技術(shù)

2014-12-30 17:13:51

HTML5

2013-01-18 10:59:44

IBMdW

2011-11-11 15:54:36

AdobeHTML5

2013-01-30 15:35:47

AdobeHTML5
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)