DIV與Table布局在大型網站的可用性比較

來源:互聯網
上載者:User
比較

  DIV與TABLE本身並不存在什麼優缺點,所謂web標準只是推薦的是正確的使用標籤,好比說:DIV用於布局,而TABLE則本來就是轉二維資料的。讓TABLE做該做的事,並不是說頁面裡不出現TABLE就是多麼多麼牛。

  用DIV進行排版的優勢就是我不說,大家應該都比較清楚。DIV是標準,是大勢所趨,但並不意味著所有的頁面都適合用它來做。

  中國的門戶和國外的有很大的區別,中國網民並不喜歡資訊量少的頁面,YAHOO到了中國頁面上的內容就多了不少,而上次改為簡潔的頁面後訪問量下降的厲害以至於沒過幾天就又改了回來。正式由於中國的國情造就了搜狐、新浪這樣門戶。

  為什麼DIV不適合他們?下面我從幾個方面來逐一說明:

  精簡代碼:

  大家都說DIV的布局精簡代碼,但是用DIV替代TABLE所節約的代碼又被CSS(樣式)所佔用,而這些樣式大多用於控制DIV的排版布局。那你會說了,CSS可以放在外部重用啊,要想得到這個問題的答案請往下看。

  重用性與下載量:

  統一使用一個.css的樣式表檔案,可以實現修改一次,全站修改的效果,這樣使得維護的成本更低。但是請大家換一個角度想,如果所有頁面在載入時都要訪問一個檔案,那這個檔案每天的下載量,特別時在搜狐、新浪的網站平台上將達到幾億次,這就需要後面有很多台前端web伺服器在做支撐,那背景成本無形中也提高了很多。如果後台支撐沒有做好,那麼頁面就會出現花屏,之前所作的工作也是白費。很多人會問,這樣的幾率太小了。我們所作的工作就是為了避免這一兩次意外的發生,如果意外發生了,對於門戶後果將是不堪設想的。

  HTTP通訊:

  統一的樣式表檔案採用外部調用的形式,這樣每次載入單個頁面都會多一次對伺服器的http請求伺服器都會增加一次響應,這樣對前端web伺服器會是很大的消耗。而原來很長時間都是將css和js寫在頁面前端(大家可以看看sohu和sina的頁面,大多都是採用這樣的形式),而不是作為外部調用的形式,也是為了盡量避免給伺服器增加消耗。

  頁面緩衝:

  每次使用者訪問的頁面,都會在瀏覽器緩衝中儲存一定時間,以保證使用者下次再訪問該頁面時能夠大大提高頁面顯示速度。而每次修改都會使頁面重新下載,對於每個外部匯入的樣式檔案也是如此,如果CSS檔案修改,那麼訪問網站的每一個頁面都會重新下載,而以往的將樣式寫在頁面中的方式,只是修改的頁面需要重新下載。

  相容性:

  對於CSS(樣式表)並不是所有瀏覽器的所有版本都支援的很好,比如IE5以前的瀏覽器對於CSS的支援就不是很好。而現在使用IE5以前版本瀏覽器的使用者不在少數,這樣就使得在頁面製作的過程中需要針對不同瀏覽器版本進行測試,以保證相容性,無形中也增加很多工作量(至少我接觸的開發人員製作div頁面比table頁面的標準時間要長一些)。

  橫切與延展性:

  橫切——傳統的布局方式為了使頁面下載的更快,把頁面自上而下分成若干個塊,但是往往採用DIV進行布局的頁面都會出現這樣的情況,由於每塊中間欄或者其他欄內容條數不固定導致兩側邊欄目沒有同時自適應,而出現留白。

  而在出現內容不固定的情況,頁面就會變成下面的樣子:

  相比之下傳統的table方式更容易規避這樣情況的發生。

  以上我們只是討論某一技術在某一領域的可用性,而非技術本身。

  說了這麼多並不是說DIV這種布局方式不好,而是說我們應該正確的看待Table在以內容為基礎的大型門戶中的作用,而不是人云亦云。之所以DIV的布局方式沒有在大型網站應用程式,不是說門戶沒有用DIV是技術落後,是裡面的人沒有前瞻性,而是多種原因決定的。網易之所以全部採用DIV的方式是因為內容並不是他們主攻方向。而對於其他門戶來說,這樣的決策是要靠時間來驗證的。只是現在這個時機還不成熟而已。



相關文章

Cloud Intelligence Leading the Digital Future

Alibaba Cloud ACtivate Online Conference, Nov. 20th & 21st, 2019 (UTC+08)

Register Now >

11.11 Big Sale for Cloud

Get Unbeatable Offers with up to 90% Off,Oct.24-Nov.13 (UTC+8)

Get It Now >

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 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。