HTML標籤嵌套層次?

1.你最多嵌套幾層?(你的數字)

2.你覺得嵌套多少是合適?(你的數字)

3.如果嵌套層次少,有利於頁面載入速度?對於搜索爬蟲呢?(請相信的講解一下第3個問題)


對於我來說,一般不考慮這個問題。因為我的方法論決定了,同樣的信息,我用的標籤和嵌套層數通常比那些持「UI中心」方法或用各種所謂「組件」的方法要少得多。所以我不必特意考慮這個嵌套層數問題。

至於性能,這主要看parser和處理程序的方式。

如果是DOM的話,受到嵌套層數影響相對是比較大的,但主要是內存影響,而不是載入速度。因此對於browser來說,嵌套層數過高是有問題的,實際上大多數browser對嵌套層數都有限制的,只是通常你不太會達到這個極限。

另外嵌套層次過多背後往往是方法論的問題,比如全div症和多class症,加上標籤數本身過多,這會影響CSS的性能。

而如果是類似SAX的方式,則嵌套層次不是問題。

對於爬蟲來說,要看爬蟲是怎麼寫的。多數爬蟲不會需要構建DOM,所以影響不大。


1,沒數過。

2,嵌套多少應該視情況而定。正如上面 @賀師俊 前輩說的,寫的多了,經驗多了,就自己總結出一套模式,於是一般不會考慮這個問題。

寫多了的話,當你看到某個要實現的「效果」,自然心裡就有大體的思路,比如:要左右布局,外面包裹一層用來居中,左右兩個用浮動還是一個固定一個拉伸。

所以要用多少結構,嵌套多少層次,並不需要過分的講究,能保證靈活性和基礎的語義化就 OK 了,這塊的性能,除了很大的網站一般不需要考慮吧。

3,沒研究過,不好說。


1.無限?

2.4-7層吧,看網頁複雜程度而定

3.這個沒有,都是CSS外掛結構,一般都是 一次渲染,嵌套識別這個用不了幾微秒,要優化也是從JS和CSS方面優化,當然,像國內的門戶大網站,都是CDN部署來優化載入速度的,很少刻意的說 用HTML的寫法來優化速度的,因為這對於現代瀏覽器,明顯是無足輕重。


只要你的標籤是語義化的,套了多少層不是一個需要很糾結的問題。

多數情況下性能的瓶頸不在於嵌套層數。

為了提高性能而破壞標籤結構我認為是過度優化。


推薦閱讀:

為什麼在知乎編輯框里正確處理字元轉義如此困難?

TAG:HTML | CSS | DivCSS | HTMLCSS |