HTML5的設計原理之求真務實。
發(fā)表日期:2015/7/31 14:39:49 文章編輯: 瀏覽次數(shù):2820
在所有設計原理中,這一條恐怕是最響亮的了——求真務實。不知道大家有沒有在公司里開會時聽到過這種口號:“開拓進取,求真務實。”實際上,除了作 為企業(yè)的口號,它還是一條非常重要的設計原理,因為求真務實對于HTML的含義是:在解決那些令人頭痛的問題之前,先看看人們?yōu)閼獙@些問題都想出了哪些 辦法。集中精力去理解這些“民間的”解決方案才是當務之急。
HTML5網(wǎng)站設計中新的語義元素就是遵循求真務實原理的反映。新增的元素不算多,談不上無限的擴展性,但卻不失為一件好事。盡管數(shù)量屈指可數(shù),但意義卻非 同一般。這些新元素涉及頭部(header)、腳部(footer)、分區(qū)(section)、文章(article)……,相信大家都不會覺得陌生。我 的意思是說,即便你不使用HTML5,也應該熟悉這些稱呼,這些都是你曾經(jīng)使用過的類名,比如class=”header”/“head”/“heading”,或class=”footer”/“foot”。當然,也可能是ID,id=”header”,id=”footer”。這些不都是我們已經(jīng)司空見慣了的嘛。
好,舉個例子吧,假設你今天寫了下面這個文檔。
1 |
|
2 | <div id= "header" >... |
3 | <div id= "navigation" >... |
4 | <div id= "main" >... |
5 | <div id= "sidebar" >... |
6 | <div id= "footer" >... |
7 |
|
這里有一個div使用了id=”header”,另一個div使用了id=”navigation”,……。怎么樣,都輕車熟路了吧?在HTML5中,這些元素都可以換掉。說起新增的語義元素,它們價值的一方面可以這樣來體現(xiàn):“嘿,看啊,這樣多好,用HTML5新增的元素可以把這些div都替換掉。”
1 |
|
2 |
|
3 |
|
4 | <div id= "main" >... |
5 |
|
6 |
|
7 |
|
當然了,你可以這樣做。在文檔級別上使用這些元素沒有問題。但是,假如新增這些元素的目的僅僅是為了取代原來的div,那就真有點多此一舉了。
雖然在這個文檔中,我們用這些新元素來替換的是ID,但在我個人看來,將它們作為類的替代品更有價值。為什么這么說呢?因為這些元素在一個頁面中不 止可以使用一次,而是可以使用多次。沒錯,你可以為文檔添加一個頭部(header),再添加一個腳部(footer);但文檔中的每個分區(qū) (section)照樣也都可以有一個頭部和一個腳部。而每個分區(qū)里還可以嵌套另一個分區(qū),被嵌套的分區(qū)仍然可以有自己的頭部和腳部,是這樣吧?
這四個新元素:section、article、aside和nav,之所以說它們強大,原因在于它們代表了一種新的內(nèi)容模型,一種HTML中前所 未有的內(nèi)容模型——給內(nèi)容分區(qū)。迄今為止,我們一直都在用div來組織頁面中的內(nèi)容,但與其他類似的元素一樣,div本身并沒有語義。但section、 article、aside和nav實際上是在明確地告訴你——這一塊就像文檔中的另一個文檔一樣。位于這些元素中的任何內(nèi)容,都可以擁有自己的概要、標 題,自己的腳部。
其中最為通用的section,可以說是與內(nèi)容最相關的一個。而article則是一種特殊的section。Aside呢,是一種特殊的section。最后,Nav也是一種特殊的section。
好,即便是現(xiàn)在,你照樣可以使用div和類來描述頁面中不同的部分,就像下面這樣:
1 | <div class= "item" > |
2 |
|
3 | <div class= "meta" >... |
4 | <div class= "content" > |
5 | ... |
6 |
|
7 | <div class= "links" >... |
8 |
|
其中包含可能是有關內(nèi)容作者的元數(shù)據(jù),而下面會給出一些鏈接,差不多就這樣。在HTML5中,我完全可以說這塊內(nèi)容就是一個文檔,通過對內(nèi)容分區(qū), 使用section或article或aside,我可以說“這一塊完全是可以獨立存在的?!币虼?,我當然可以使用header和footer。
1 | <section class= "item" > |
2 |
|
3 | <footer class= "meta" >... |
4 | <div class= "content" > |
5 | ... |
6 |
|
7 | <nav class= "links" >... |
8 |
|
請注意,即便是footer,也不一定非要出現(xiàn)在下面,不是嗎?這幾個元素,header、footer、aside、nav,最重要的是它們的語 義;跟位置沒有關系。一想到footer這個詞,我們總會不由自主地想,“噢,應該放在下面?!蓖瑯?,我們把aside想象成一個側邊欄??墒牵绻憧?一看規(guī)范,就會發(fā)現(xiàn)這些元素只跟內(nèi)容有關。因此,放在footer中的內(nèi)容也可以是署名,文章作者之類的,它只是你使用的一個元素。這個元素并沒有說“必 須把我放在文檔或者分區(qū)的下面?!?/p>
這里,請注意,最重要的還不是我用幾個新元素替換了原來的div加類,而是我把原來的H2換成了H1——震撼吧,我看到有人發(fā)抖了。我碰到過不少職 業(yè)的Web開發(fā)人員,多年來他們一直認為規(guī)范里說一個文檔中只能有一個H1。還有一些自詡為萬能的SEO秘訣同樣說要這樣。很多SEO的技巧其實是很教條 的。所謂教條,意思就是不相信數(shù)據(jù)。過去,這種教條表現(xiàn)為“不行,頁面中包含兩個以上的H1,你就會死掉的。”在HTML5中,只要你建立一個新的內(nèi)容 塊,不管用section、article、aside、nav,還是別的元素,都可以在其中使用H1,而不必擔心這個塊里的標題在整個頁面中應該排在什 么級別;H2、H3,都沒有問題。
這個變化太厲害了。想一想吧,這個變化對內(nèi)容管理是革命性的。因為現(xiàn)在,你可以把每個內(nèi)容分區(qū)想象一個獨立的、能夠從頁面中拿出來的部分。此時,根 據(jù)上下文不同,這個獨立部分中的H1,在整個頁面中沒準會扮演H2或H3的角色——取決于它在文檔中出現(xiàn)的位置。面對這個突如其來的變化,也許有人的腦子 會暫時轉(zhuǎn)不過彎來。不要緊,但我可以告訴你,我認為這才是HTML5中這些新語義標記的真正價值所在。換句話說,我們現(xiàn)在有了獨立的元素了,這些元素中的 標題級別可以重新定義。
我的文檔中可能會包含一個分區(qū),這個分區(qū)中可能會嵌套另一個分區(qū),或者一篇文章,然后文章再嵌套分區(qū),分區(qū)再嵌套文章、嵌套分區(qū),文章再嵌套文章。 而且每個分區(qū)和文章都可以擁有自己的H1到H6。從這個意義上講,H元素真可謂“子子孫孫,無窮匱也”了。但是,在你在編寫內(nèi)容或者內(nèi)容管理系統(tǒng)的時候, 它們又都是獨立的,完全獨立的內(nèi)容塊。這才是真正的價值所在。
實際上,這個點子并不HTML5工作組拍腦門想出來的,也不是W3C最近才提出來的。下面這幾句話摘自蒂姆·伯納斯-李1991年的一封郵件,郵件 是發(fā)給丹·康納利(Dan Connolly)的。他在郵件中解釋了對HTML的理解,他說:“你知道……知道我的想法,我認為H1、H2這樣單調(diào)地排下去不好,我希望它成為一種可 以嵌套的元素,或者說一個通用的H元素,我們可以在其中嵌套不同的層次?!钡髞?,我們沒有看到通用的H元素,而是一直在使用H1和H2——那是因為我們 一直在支持已有的內(nèi)容。20年后的今天,這個理想終于實現(xiàn)了。
-------北京網(wǎng)站建設公司 北京傳誠信------
-
男女程序員的對比,那個更適合這個行業(yè).
日期:2016-02-24 瀏覽次數(shù):3243
-
網(wǎng)站布局之價格表單設計靈感來源。
日期:2015-12-14 瀏覽次數(shù):3193
-
JS判斷移動設備并實現(xiàn)跳轉(zhuǎn)至手機版網(wǎng)頁
日期:2015-12-14 瀏覽次數(shù):3335
-
HTML5的設計特性!
日期:2015-07-31 瀏覽次數(shù):2738
-
?HTML5是怎么來的!
日期:2015-07-31 瀏覽次數(shù):2832
-
免費SSL證書申請網(wǎng)站topssl.cn上線
日期:2024-09-23 瀏覽次數(shù):1914
-
如何在北京順義尋找一個踏實的網(wǎng)站建設公司
日期:2023-08-10 瀏覽次數(shù):4978
-
順義網(wǎng)站建設:北京順義網(wǎng)站建設的優(yōu)點
日期:2023-05-25 瀏覽次數(shù):5357
-
選擇網(wǎng)站公司需要考慮哪些因素
日期:2023-05-25 瀏覽次數(shù):4197
-
北京模板建站
日期:2023-03-28 瀏覽次數(shù):4414
-
移動應用程序如何成功的7個措施
日期:2019-03-12 瀏覽次數(shù):2382
-
網(wǎng)站可以為移動用戶創(chuàng)造良好的體驗6種方式
日期:2019-03-11 瀏覽次數(shù):2683
-
網(wǎng)站性能不佳的表現(xiàn)?如何發(fā)現(xiàn)網(wǎng)站性能不佳的原因
日期:2019-10-22 瀏覽次數(shù):2068
-
一個有效的網(wǎng)站設計具備哪些特征以及如何建立一個有效的網(wǎng)站
日期:2019-07-08 瀏覽次數(shù):2444
-
網(wǎng)站設計師制作的4種顏色錯誤
日期:2019-01-15 瀏覽次數(shù):4521