HTML5语义化

  我记得刚做网面的时时候,最常用的页面编写软件是DW,如果要划分区块,我们常使用的是table标签。由于当时的技术不精,我总是能把一个页面用表格布局的乱七八糟。后来div用的比较好了,就全用div了。但是发现我写一个网页,里面会嵌套很多层div,有时候再嵌套div进去的时候都不知道该写个什么类名来区分,甚至有时候写了类名也不知道这个到底来干什么,所以会一直加注释。再后来,接触到语义化标签,所谓语义化,也和div一样是来划分区域的。只不过,div不具备任何语义,而语义化标签,也称结构化元素,有自己的语义,使我们的代码更加优雅、结构更加清晰、更容易维护、浏览器更加容易解析阅读。

我们为什么要使用标签语义化呢?

  • 为了在没有CSS的情况下,页面也能呈现出很好地内容结构、代码结构:为了裸奔时好看;
  • 用户体验:例如title、alt用于解释名词或解释图片信息、label标签的活用;
  • 有利于SEO:和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息:爬虫依赖于标签来确定上下文和各个关键字的权重;
  • 方便其他设备解析(如屏幕阅读器、盲人阅读器、移动设备)以意义的方式来渲染网页;
  • 便于团队开发和维护,语义化更具可读性,是下一步吧网页的重要动向,遵循W3C标准的团队都遵循这个标准,可以减少差异化。

常见的语义化标签如下:

  •   header:用于表示页面或某个区域的头部。一个页面中,可以出现多次header,用于对页面内部一组介绍性或导航性进行标记;
  •   nav: 用于表示导航栏;
  •   aside: 用于表示跟周围主题相关的附加信息(侧边栏),如:广告、猜你喜欢等等;
  •   article: 用于表示文章或其他可独立页面存在的内容,也是可以嵌套的;
  •   section: 用于表示一个整体的部分主题,多个section组成了article;
  •   footer: 页脚。只用当父级是body时,才是整个页面的页脚。

写HTML代码时应注意什么?

  • 尽可能少的使用无语义的标签div和span;
  • 在语义不明显时,既可以使用div或者p时,尽量用p, 因为p在默认情况下有上下间距,对兼容特殊终端有利;
  • 不要使用纯样式标签,如:b、font、u等,改用css设置。
  • 需要强调的文本,可以包含在strong或者em标签中(浏览器预设样式,能用CSS指定就不用他们),strong默认样式是加粗(不要用b),em是斜体(不用i);
  • 使用表格时,标题要用caption,表头用thead,主体部分用tbody包围,尾部用tfoot包围。表头和一般单元格要区分开,表头用th,单元格用td;
  • 表单域要用fieldset标签包起来,并用legend标签说明表单的用途;
  • 每个input标签对应的说明文本都需要使用label标签,并且通过为input设置id属性,在lable标签中设置for=someld来让说明文本和相对应的input关联起来。

  

借鉴地址:https://www.cnblogs.com/freeyiyi1993/p/3615179.html

猜你喜欢

转载自www.cnblogs.com/smuwgeg/p/9460088.html
今日推荐