在HTML5 中有一個(gè)很重要的概念纱兑,叫做HTML5 大綱算法(HTML5 Outliner),它的用途是為用戶提供一份頁面的信息結(jié)構(gòu)目錄银萍。比如我們經(jīng)常使用的手冊(cè)就是一個(gè)非常好的大綱結(jié)構(gòu)
合理的使用HTML5 元素標(biāo)簽瞻凤,可以生成一個(gè)非常清晰的文檔大綱骡送,我們可以通過各種工具去查看當(dāng)前頁面,比如谷歌和火狐的插件可以查看當(dāng)前的HTML5 大綱待笑。這里推薦使用一個(gè)服務(wù)器端的測(cè)試工具:
HTML5 Outliner鸣皂,網(wǎng)址如下:
測(cè)試工具:https://gsnedders.html5.org/outliner/
這個(gè)工具可以上傳本地html 文件,也可以填寫URL暮蹂,或者直接在多行文本框上編寫HTML5 代碼均可了解大綱寞缝。
section和div的區(qū)別
div 元素在html5 之前就是非常常用的標(biāo)簽,它本身沒有任何語義仰泻,用來頁面布局和CSS 樣式以及JS 調(diào)用荆陆。那么,div 的用途已經(jīng)說的很清楚了:
- 1.如果是頁面布局集侯,且不是header被啼、footer 之類的專屬區(qū)域帜消,都應(yīng)該使用div;
- 2.如果只是單純的對(duì)一個(gè)端內(nèi)容進(jìn)行CSS 樣式定義趟据,那么也應(yīng)該使用div;
- 3.如果想對(duì)一段內(nèi)容進(jìn)行JS 控制券犁,那么也應(yīng)該使用div。
html5 中汹碱,section 并不是用來取代div 的粘衬。它是具有語義的文檔標(biāo)簽。表示一段文檔中的章節(jié)咳促,比如包含一個(gè)標(biāo)題和一個(gè)段落稚新,而大綱規(guī)范中,至少要包含一個(gè)標(biāo)題跪腹。section 至少需要一個(gè)h1 ~ h6
header 元素不需要強(qiáng)制標(biāo)題h1 ~ h6褂删,如果有標(biāo)題,算body 的冲茸。這樣主大綱標(biāo)題就有了
section 和nav 元素大綱要求有標(biāo)題h1 ~ h6屯阀,但section 必須有才規(guī)范,而nav如果沒有標(biāo)題轴术,也是合理的难衰。當(dāng)然,添加上標(biāo)題會(huì)讓大綱更加好看逗栽,頁面中可以隱藏盖袭。