【重構前端知識體系之HTML】講講對HTML5的一大特性——語義化的理解
【重構前端知識體系之HTML】講講對HTML5的一大特性——語義化的理解
引言
在講什么是語義化之前,先看看語義化的背景。
在之前的文章中提到HTML最重要的特性,那就是標簽。但是項目一大,標簽多的看不懂,一堆疊著一堆。一些命名奇奇怪怪,想維護被勸退,團隊協作導致團戰開始!
因此語義化迫在眉睫!
什么是語義化
在我們寫HTML時其實無所謂,因為你里面長啥樣,用戶看不到,也不用看到。
因為你有CSS的漂亮衣服,即使你的HTML一塌糊涂,CSS也可以讓它光鮮亮麗。
但是用戶看不到,開發者看得到呀!因此,這個語義化的友好者是開發者本身。
所謂語義化,就是憑著HTML本身,也能體驗出人性化的結構!
語義化的好處
在沒有CSS的情況下,頁面也能呈現出很好地內容結構、代碼結構。這樣開發者一眼就明了你的意圖,一秒破冰!
對SEO友好。對開發者友好,那么對開發者的小蟲子們也是當然!
當標簽應用得當,體現出上下文中你想要關鍵字的權重,那么搜索引擎爬蟲就到了你的頭上了。那么網站的訪問量不就來了嗎。
可以支持一些特殊的設備(盲人閱讀、移動設備),網頁翻譯等。
最直觀的一點,便是你的隊友都希望和你合作!你的代碼的語義化,隊友都愛啊!
語義化更具可讀性,遵循W3C標準的團隊都遵循這個標準,可以減少差異化。(跳槽快速融入?)
工作中語義化的思考
不要使用一些純樣式標簽,這些CSS會幫我們做到。如:b、font、u等一些標簽。
需要強調的文本,可以包含在strong或者em標簽中(,strong默認樣式是加粗(不要用b),em是斜體(不用i)。使用 mark標簽來表示標注的/突出顯示的文本。
但是還是可以考慮使用CSS來完成。
每個input標簽對應的說明文本都需要使用label標簽,并且通過為input設置id屬性,在lable標簽中設置for=someld來讓說明文本和相對應的input關聯起來。
表單域要用fieldset標簽包起來,并用legend標簽說明表單的用途。
應該使用
- 來表示標題。
當用CSS寫樣式的時候命名也需要遵循HTML的結構,體現出語義化的本質。
語義化的標簽
1、
通常包含頁面的正副標題。
據現場勘查,他真的是美男子!他真的是美男子嗎?
2、
可以在一個文檔中使用多
3、
它不應包含在文檔中重復出現的內容,比如側欄、導航欄、版權信息、站點標志或搜索表單。
在一個文檔中,不能出現多個
我是一個聰明的孩子我的介紹
4、
比如章節、頁眉、頁腳或文檔中的其他部分。
The People's Republic of China was born in 1949...PRC
5、
比如文章下的評論之類的
我聰明的秘訣是我愛思考我為什么聰明呢
6、
用來裝載非正文類的內容。例如廣告,成組的鏈接,側邊欄等等。
聰明的研究
7、
用于定義頁面的主要導航部分。
一個語義化模板
先來看一張圖。
看起來,一個標標致致的HTML結構就很清晰了。
總結
有的朋友肯定會問了,那平時都是用框架寫的代碼,基本不用用這些,又不是去寫個人網站或者官網,都是寫一些業務型的H5或者后臺管理。
其實對于個人網站或者官網來說,語義化是有實際價值的。而且,這個也是近些年來面試的常問的一題。最重要的是要去學習語義化的含義。做到代碼語義化,包括函數的命名,組件的命名,組件業務功能的拆分。一直在路上!
重構前端知識體系,你要一起嗎?
博客說明與致謝
文章所涉及的部分資料來自互聯網整理,其中包含自己個人的總結和看法,分享的目的在于共建社區和鞏固自己。
引用的資料如有侵權,請聯系本人刪除!
感謝萬能的網絡,W3C,菜鳥教程等!
感謝勤勞的自己,個人博客,GitHub學習,GitHub
公眾號【歸子莫】,小程序【子莫說】
如果你感覺對你有幫助的話,不妨給我鼓勵一下,好文記得喲!關注我一起成長!
所屬專欄:重構前端知識體系(HTML)
幸好我在,感謝你來!
HTML HTML5 web前端
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。