1枫甲、什么是HTML語義化恢恼?
- <基本上都是圍繞著幾個主要的標簽,像標題(H1~H6)弓熏、列表(li)恋谭、強調(strong em)等等>
- 根據(jù)內容的結構化(內容語義化),選擇合適的標簽(代碼語義化)便于開發(fā)者閱讀和寫出更優(yōu)雅的代碼的同時讓瀏覽器的爬蟲和機器很好地解析挽鞠。
2疚颊、為什么要語義化?
- 為了在沒有CSS的情況下信认,頁面也能呈現(xiàn)出很好地內容結構材义、代碼結構:為了裸奔時好看;
- 用戶體驗:例如title嫁赏、alt用于解釋名詞或解釋圖片信息其掂、label標簽的活用;
- 有利于SEO:和搜索引擎建立良好溝通潦蝇,有助于爬蟲抓取更多的有效信息:爬蟲依賴于標簽來確定上下文和各個關鍵字的權重清寇;
- 方便其他設備解析(如屏幕閱讀器、盲人閱讀器护蝶、移動設備)以意義的方式來渲染網(wǎng)頁华烟;
- 便于團隊開發(fā)和維護,語義化更具可讀性持灰,是下一步吧網(wǎng)頁的重要動向盔夜,遵循W3C標準的團隊都遵循這個標準,可以減少差異化堤魁。
3喂链、寫HTML代碼時應注意什么?
- 盡可能少的使用無語義的標簽div和span妥泉;
- 在語義不明顯時椭微,既可以使用div或者p時,盡量用p, 因為p在默認情況下有上下間距盲链,對兼容特殊終端有利蝇率;
- 不要使用純樣式標簽,如:b刽沾、font本慕、u等,改用css設置
- 需要強調的文本侧漓,可以包含在strong或者em標簽中(瀏覽器預設樣式锅尘,能用CSS指定就不用他們),strong默認樣式是加粗(不要用b)布蔗,em是斜體(不用i)藤违;
- 使用表格時浪腐,標題要用caption,表頭用thead顿乒,主體部分用tbody包圍议街,尾部用tfoot包圍。表頭和一般單元格要區(qū)分開淆游,表頭用th,單元格用td隔盛;
- 表單域要用fieldset標簽包起來犹菱,并用legend標簽說明表單的用途;
- 每個input標簽對應的說明文本都需要使用label標簽吮炕,并且通過為input設置id屬性腊脱,在lable標簽中設置for=someld來讓說明文本和相對應的input關聯(lián)起來。