告誡新手,DIV不是一切

來源:互聯網
上載者:User
創造神話的是CSS,不是DIV+CSS。我想,是時候糾正這個問題了。

在大約兩年前,DIV+CSS是一對很誘人的組合,會用DIV+CSS製作網頁的人,常常會被人贊以大拇指的,記得06年初的時候,我用div+css布局的一個純靜態網站還拿了學校網頁設計比賽的一個獎。
今天,儘管提到DIV+CSS,還會有很多人熱情高漲,但是我會對他搖頭了:DIV+CSS不是一切,更不是某些人所謂的“神話”!創造神話的是CSS,不是DIV+CSS。我想,是時候糾正這個問題了。

CSS的要義,是各個標籤要各盡所用。
盲目推崇DIV+CSS只會讓小白誤入歧途的。

1、DIV只是HTML最常用的標籤之一
顯然HTML並不只是一個DIV標籤有用,每個標籤都有它的用途,只是DIV是其中最有用的一個罷了。如果DIV可以實現所有其它標籤的功能,那麼W3C早就把HTML精簡了!
Table也不是一無是處,只是用table比較簡單、容易上手才在早期被人錯誤的廣泛推廣。但是table在處理網頁資料的表現上,是其他標籤無法替代的,只是,它不適合用來做整個頁面的布局。
2、代碼的可讀性
純DIV+CSS的網站的代碼的可讀性無疑是非常差的,甚至table還可以通過tr和td來區分行和列,一堆DIV堆砌在一起,如果沒有注釋,你根本不知道某個部分是做什麼用的。

3、語義化與結構化
現在,在開發CSS的時候,提的越來越多的是語義化,語義化歸根到底其實還是代碼的可讀性問題。語義化就是讓代碼更易讀,更加易懂,比如,.text_01{color:red} 就沒有.text_red{color:red} 容易理解。
HTML同樣如此,比如我們看到<ol>就知道這是個有序列表;看到<p>標籤就知道這是一個段落,內容為文字;看到<span>就知道這個是比<p>還小的文字單位;看到<h1>、<h2>之類的就知道他們是標題。
顯然,全部是div的頁面,是看不出來這些的。
頁面的結構化亦是如此,比如<div><div><div><div>…..</div></div></div></div>這樣的代碼,顯然是很難理解其DOM結構的,但是<div><p><h2><span>…..</span></h2></p></div>就比上面的那個結構要清晰很多。
相信做開發的人對代碼的語義化和結構化的理解會更加深刻。

4、團隊合作
可讀性低、結構化和語義化差,團隊的其他成員的學習和維護難度就會提高,這對於一個團隊來說,是很浪費時間和精力的。
其實,DIV+CSS的說法,已經把我們從table帶到了另外的一個極端,正確的網頁設計不是一個標籤雄霸天下,而是每個元素都使用合適的標籤。
所以說,DIV+CSS要換一種說法了,(X)HTML+CSS不更合適嗎?
請不要再特意提DIV了。小白們真的會把它當作寶貝的!
其實回頭看看國內普及標準化的過程,已然走錯路了,就在國外同行研究CSS Sprites和網格(Grid)等技術時,我們在做什嗎?就在國外CSS架構遍地開花的時候,我們在做什嗎?到現在我們還是只能去國外的東西,依然跟在別人後面。
兩年了,我們依然糾纏於DIV+CSS……
 



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。