我的家園

          我的家園

          HTML5之New Elements

          Posted on 2012-07-04 00:27 zljpp 閱讀(869) 評論(0)  編輯  收藏

          大致使用了許多HTML5支持的新元素,并在接下來要搭建的Web Page中大量嘗試,感謝國外站點(diǎn)提供了許多免費(fèi)開源的HTML5模板,使得真正理解新元素的使用場景和意義變得越發(fā)輕松。這里也順便總結(jié)一下自己的體會(huì):


          HTML5新元素

          1. Semantic/Structural Elements
          <article> Defines an article
          <aside> Defines content aside from the page content
          <bdi> Isolates a part of text that might be formatted in a different direction from other text outside it
          <command> Defines a command button that a user can invoke
          <details> Defines additional details that the user can view or hide
          <summary> Defines a visible heading for a <details> element
          <figure> Specifies self-contained content, like illustrations, diagrams, photos, code listings, etc.
          <figcaption> Defines a caption for a <figure> element
          <footer> Defines a footer for a document or section
          <header> Defines a header for a document or section
          <hgroup> Groups a set of <h1> to <h6> elements when a heading has multiple levels
          <mark> Defines marked/highlighted text
          <meter> Defines a scalar measurement within a known range (a gauge)
          <nav> Defines navigation links
          <progress> Represents the progress of a task
          <ruby> Defines a ruby annotation (for East Asian typography)
          <rt> Defines an explanation/pronunciation of characters (for East Asian typography)
          <rp> Defines what to show in browsers that do not support ruby annotations
          <section> Defines a section in a document
          <time> Defines a date/time
          <wbr> Defines a possible line-break

          2. Media Elements
          <audio> Defines sound content
          <video> Defines a video or movie
          <source> Defines multiple media resources for <video> and <audio>
          <embed> Defines a container for an external application or interactive content (a plug-in)
          <track> Defines text tracks for <video> and <audio>

          3. Advance Elements
          <canvas> Used to draw graphics, on the fly, via scripting (usually JavaScript)
          <datalist> Specifies a list of pre-defined options for input controls
          <keygen> Defines a key-pair generator field (for forms)
          <output> Defines the result of a calculation

          HTML5擯棄的舊元素
          <acronym>, <applet>, <basefont>, <big>, <center>, <dir>, <font>, <frame>, <frameset>, <noframes>, <strike>, <tt>

          網(wǎng)頁布局的影響:

          - 在布局的表意上,更加清晰明了,在舊的方式下,我們通常使用float:left下的div元素來劃分頁面的各個(gè)部分,包括了頁頭、頁尾、導(dǎo)航、主題等等。例如在頁頭中包含導(dǎo)航區(qū)域,也仍然使用div嵌套div的方式。
          - 而使用HTML5之后,頁頭可以使用專門header元素,頁尾可以使用專門的footer元素,導(dǎo)航可以專用nav元素,主題部分若是文字為主的區(qū)域,可以專用article元素,在中間嵌套圖片、代碼片段等,可以專用figure元素。
          - 總而言之,由于元素的抽象更加細(xì)致,使得表意上更加清晰,日后重構(gòu)頁面的時(shí)候,讓閱讀代碼的人也可以更加容易的分析頁面的整體結(jié)構(gòu)。


          瀏覽器的影響:

          - 注意不是所有的元素都被主流browser所支持,例如details和summary元素,目前為止就只被chrome所支持, chrome提供了details元素的閉合和展開默認(rèn)實(shí)現(xiàn),當(dāng)閉合的時(shí)候
          - 筆者在想這個(gè)元素的設(shè)計(jì)提交是否出自Google的員工,-_-|||
          - 在IE瀏覽器系列,大部分HTML5的元素,就只能被IE9所支持,這個(gè)對于中國的用戶來說,估計(jì)比較要命
          - 想time這種代表時(shí)間或者日期的新元素,能代替之前百家爭鳴各式各樣自制的日歷控件,由瀏覽器來提供樣式和基本功能,但悲劇的是,目前還沒有一家瀏覽器廠商支持它


          其他元素體驗(yàn):

          - embed元素提供了在網(wǎng)頁中內(nèi)嵌其他plugin application的能力,最常見的是flash
          - datalist豐富的輸入框的自動(dòng)填充和提示功能,內(nèi)置讓用戶輸入關(guān)鍵字的時(shí)候能夠自動(dòng)匹配option中包含的選項(xiàng)內(nèi)容,目前似乎只有Firefox等少數(shù)browser支持
          - input type="range"提供了一個(gè)拉動(dòng)條可以調(diào)整輸入值的范圍,input type="number"提供了專屬數(shù)字的輸入框
          - aside提供了對主要內(nèi)容區(qū)域之外的邊欄設(shè)計(jì),例如在許多網(wǎng)站上能看到的右側(cè)長條廣告區(qū)域
          - 不得不提的是canvas提供了在一定范圍的區(qū)域內(nèi)進(jìn)行圖形繪制,結(jié)合Javascript調(diào)用圖形繪制的API,可以實(shí)現(xiàn)頁面的各種特效,一個(gè)很強(qiáng)大的例子:http://www.effectgames.com/demos/canvascycle/


          總結(jié):

          - HTML5新增加的元素對于Web頁面的開發(fā)者來說可能是一次挑戰(zhàn),因?yàn)橐淖兊牧?xí)慣很多,要熟悉的內(nèi)容也很細(xì)
          - 以前從table/tr/td來做網(wǎng)頁,到Web2.0時(shí)代大量使用div+css2.x一樣,任何新的設(shè)計(jì)和理念的出現(xiàn)都一定是有它的道理,對于當(dāng)今agile盛行快速變化的世界,頁面的重構(gòu)在使用老的元素下,龐大的頁面嵌套這滿屏幕的div和table,工作量非常之龐大,所以才會(huì)有更清晰表意的各種HTML5新元素誕生
          - 在Javascript解釋速度、browser本地化計(jì)算能力、硬件速度飛躍提升的背景下,例如canvas提供的圖形繪制API,讓頁面特效可以無限強(qiáng)大,網(wǎng)頁游戲也甚至可以趕上以往客戶端游戲的效果


          Reference:

          一篇介紹HTML5的好文章:http://www.ibm.com/developerworks/cn/xml/x-html5/



          HTML5新元素

          1. Semantic/Structural Elements
          <article> Defines an article
          <aside> Defines content aside from the page content
          <bdi> Isolates a part of text that might be formatted in a different direction from other text outside it
          <command> Defines a command button that a user can invoke
          <details> Defines additional details that the user can view or hide
          <summary> Defines a visible heading for a <details> element
          <figure> Specifies self-contained content, like illustrations, diagrams, photos, code listings, etc.
          <figcaption> Defines a caption for a <figure> element
          <footer> Defines a footer for a document or section
          <header> Defines a header for a document or section
          <hgroup> Groups a set of <h1> to <h6> elements when a heading has multiple levels
          <mark> Defines marked/highlighted text
          <meter> Defines a scalar measurement within a known range (a gauge)
          <nav> Defines navigation links
          <progress> Represents the progress of a task
          <ruby> Defines a ruby annotation (for East Asian typography)
          <rt> Defines an explanation/pronunciation of characters (for East Asian typography)
          <rp> Defines what to show in browsers that do not support ruby annotations
          <section> Defines a section in a document
          <time> Defines a date/time
          <wbr> Defines a possible line-break

          2. Media Elements
          <audio> Defines sound content
          <video> Defines a video or movie
          <source> Defines multiple media resources for <video> and <audio>
          <embed> Defines a container for an external application or interactive content (a plug-in)
          <track> Defines text tracks for <video> and <audio>

          3. Advance Elements
          <canvas> Used to draw graphics, on the fly, via scripting (usually JavaScript)
          <datalist> Specifies a list of pre-defined options for input controls
          <keygen> Defines a key-pair generator field (for forms)
          <output> Defines the result of a calculation

          HTML5擯棄的舊元素
          <acronym>, <applet>, <basefont>, <big>, <center>, <dir>, <font>, <frame>, <frameset>, <noframes>, <strike>, <tt>

          網(wǎng)頁布局的影響:

          - 在布局的表意上,更加清晰明了,在舊的方式下,我們通常使用float:left下的div元素來劃分頁面的各個(gè)部分,包括了頁頭、頁尾、導(dǎo)航、主題等等。例如在頁頭中包含導(dǎo)航區(qū)域,也仍然使用div嵌套div的方式。
          - 而使用HTML5之后,頁頭可以使用專門header元素,頁尾可以使用專門的footer元素,導(dǎo)航可以專用nav元素,主題部分若是文字為主的區(qū)域,可以專用article元素,在中間嵌套圖片、代碼片段等,可以專用figure元素。
          - 總而言之,由于元素的抽象更加細(xì)致,使得表意上更加清晰,日后重構(gòu)頁面的時(shí)候,讓閱讀代碼的人也可以更加容易的分析頁面的整體結(jié)構(gòu)。


          瀏覽器的影響:

          - 注意不是所有的元素都被主流browser所支持,例如details和summary元素,目前為止就只被chrome所支持, chrome提供了details元素的閉合和展開默認(rèn)實(shí)現(xiàn),當(dāng)閉合的時(shí)候
          - 筆者在想這個(gè)元素的設(shè)計(jì)提交是否出自Google的員工,-_-|||
          - 在IE瀏覽器系列,大部分HTML5的元素,就只能被IE9所支持,這個(gè)對于中國的用戶來說,估計(jì)比較要命
          - 想time這種代表時(shí)間或者日期的新元素,能代替之前百家爭鳴各式各樣自制的日歷控件,由瀏覽器來提供樣式和基本功能,但悲劇的是,目前還沒有一家瀏覽器廠商支持它


          其他元素體驗(yàn):

          - embed元素提供了在網(wǎng)頁中內(nèi)嵌其他plugin application的能力,最常見的是flash
          - datalist豐富的輸入框的自動(dòng)填充和提示功能,內(nèi)置讓用戶輸入關(guān)鍵字的時(shí)候能夠自動(dòng)匹配option中包含的選項(xiàng)內(nèi)容,目前似乎只有Firefox等少數(shù)browser支持
          - input type="range"提供了一個(gè)拉動(dòng)條可以調(diào)整輸入值的范圍,input type="number"提供了專屬數(shù)字的輸入框
          - aside提供了對主要內(nèi)容區(qū)域之外的邊欄設(shè)計(jì),例如在許多網(wǎng)站上能看到的右側(cè)長條廣告區(qū)域
          - 不得不提的是canvas提供了在一定范圍的區(qū)域內(nèi)進(jìn)行圖形繪制,結(jié)合Javascript調(diào)用圖形繪制的API,可以實(shí)現(xiàn)頁面的各種特效,一個(gè)很強(qiáng)大的例子:http://www.effectgames.com/demos/canvascycle/


          總結(jié):

          - HTML5新增加的元素對于Web頁面的開發(fā)者來說可能是一次挑戰(zhàn),因?yàn)橐淖兊牧?xí)慣很多,要熟悉的內(nèi)容也很細(xì)
          - 以前從table/tr/td來做網(wǎng)頁,到Web2.0時(shí)代大量使用div+css2.x一樣,任何新的設(shè)計(jì)和理念的出現(xiàn)都一定是有它的道理,對于當(dāng)今agile盛行快速變化的世界,頁面的重構(gòu)在使用老的元素下,龐大的頁面嵌套這滿屏幕的div和table,工作量非常之龐大,所以才會(huì)有更清晰表意的各種HTML5新元素誕生
          - 在Javascript解釋速度、browser本地化計(jì)算能力、硬件速度飛躍提升的背景下,例如canvas提供的圖形繪制API,讓頁面特效可以無限強(qiáng)大,網(wǎng)頁游戲也甚至可以趕上以往客戶端游戲的效果


          Reference:

          一篇介紹HTML5的好文章:http://www.ibm.com/developerworks/cn/xml/x-html5/


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 西青区| 周至县| 巍山| 论坛| 平顶山市| 富顺县| 临沭县| 玛纳斯县| 万安县| 通城县| 正宁县| 高邮市| 凤冈县| 广元市| 象州县| 凤凰县| 平顶山市| 石台县| 故城县| 上虞市| 乌拉特前旗| 当雄县| 湘潭县| 集安市| 水富县| 新田县| 万荣县| 尖扎县| 弋阳县| 察雅县| 铜鼓县| 德昌县| 河北区| 东海县| 衡阳市| 玉溪市| 宜君县| 泾阳县| 沙湾县| 甘肃省| 丹凤县|