1、什么是HTML语义化
根据内容的结构化(内容语义化),选择合适的标签(代码语义化),便于开发者阅读和写出更优雅的代码的同时让浏览器的爬虫和机器更好的解析。
2、为什么要代码语义化
a、在没有css的情况下,页面也能呈现出很好的内容结构
b、更好的用户体验,比如:title、alt用于解释名词或解释图片信息、lable标签的活用。
c、有利于SEO,和搜索引擎建立良好的沟通,有助于爬虫抓取更多的有效信息,爬虫依赖标签来确定上下文和各个关键字的权重。
d、方便其他设备来解析(如屏幕阅读器、盲人阅读器、移动设备等)以意义的方式来渲染网页。
e、便于团队开发和维护,语义化标签更具可读性。
3、编写HTML代码时应注意什么?
a、尽可能减少无语义的标签div和span
b、在语义不明显时,假设既可以用div或p时,尽量使用p标签,因为p标签在默认情况下有上下间距,对兼容特殊终端有利。
c、不要使用纯样式标签,如:font、b(粗体)、u(下划线)等,改用css设置。
d、需要强调的文本,可以包含在strong或者em标签中(浏览器预设样式,能用CSS指定就不用他们),strong默认样式是加粗(不要用b),em是斜体(不用i)。
e、使用表格时,标题用caption,表头用thead,主体用tbody,尾部用tfoot。
f、表单域要用fieldset标签包裹,并用legend标签说明表单用途。
g、每个input标签对应的说明文本都需要使用label标签,并且通过为input设置id属性,在lable标签中设置for=someld来让说明文本和相对应的input关联起来。