前端面试题-HTML结构语义化

1、HTML语义化的背景

HTML结构语义化,是近几年才提出来的,对比以前的 HTML 结构,大可能是一堆没有语义的标签。用的最多的就是 DIV+CSS,为了改变这种现状,开发者们和官方提出了 HTML结构语义化的概念,而且在 HTML5 添加了不少语义化标签。web

2、HTML语义化的概念

语义化是指根据内容的结构,选择合适的标签,便于开发者阅读和写出更优雅的代码的同时,让浏览器的爬虫和机器很好的解析。数据库

3、HTML语义化的必要

随着互联网的发展,WEB承载愈来愈多的信息(图片,音频,视频等),人们开始用机器来处理网络信息,就此诞生了搜索引擎。如次庞大及复杂的信息如何让搜索引擎处理和挖掘,因此让机器可以更好地读懂WEB上内容就变得愈来愈重要。segmentfault

传统的Web由文档组成,W3C但愿经过一组技术支撑 “数据的Web”,即 Web of Data,将Web看做一个存储和管理数据的大型分布式数据库。语义Web是构造这样的数据Web的重要一环,帮助人们建立数据并存储在Web上,建立相关的词汇表及数据的处理规则。

4、HTML语义化的做用

4.1 页面结构清晰

去掉或 CSS 样式丢失的时候,也能让页面呈现清晰的结构,加强页面的可读性。浏览器

4.2 支持更多设备

方便其余设备解析(如屏幕阅读器、盲人阅读器、移动设备)以有意义的方式来渲染网页。网络

4.3 利于SEO优化

和搜索引擎创建良好沟通,有助于爬虫抓取更多的有效信息,搜索引擎的爬虫也依赖于标记来肯定上下文和各个关键字的权重。分布式

4.4 便于团队开发和维护

在团队中你们都遵循W3C标准,能够减小不少差别化的东西,方便开发和维护,提升开发效率,甚至实现模块化开发。模块化

5、HTML语义化的方法

(1)根据文档上下文结构合理的选用最适合表达当前语义的标签;优化

(2)尽可少使用无语义的标签 <div> 和 <span>;搜索引擎

(3)不要使用带有样式的标签,好比:<b><u><font> 等,使用 CSS 设置;spa

(4)标题标签的使用应该根据重要性逐级递减,没有断层,而且一个页面只能有一个 <h1>;

(5)提升关键词密度,如图像的替代文本 alt,提示文本 title;

(6)正确使用内容容器,好比段落 <p>,列表 <ul>, <ol>, <li>, <dl>, <dt>, <dd>;

(7)须要强调的文本,可使用 <strong><em> 标签(浏览器默认样式,能用 CSS 设置就不用), <strong> 默认样式是加粗(不用 <b>),<em> 是斜体(不用 <i>);

(8)表格注意使用,标题 <caption>,表头 <thead>,表格主体(正文)<tbody>,表注(页脚)<tfoot>。<tr> 定义表格行,<th> 定义表头,<td> 定义表格单元。

(9)表单域使用 <fieldset>标签,而且<legend> 标签为 <fieldset> 定义标题;

(10)每一个 <input> 标签对应的说明文本都须要使用 <label> 标签,经过为 <input> 设置 id 属性,而且在 <lable> 标签中设置 for=id 使说明文本和对应的 <input> 关联。

阅读更多

相关文章
相关标签/搜索