前记为了准备春招面试,对自己的知识点进行一个总结积累,第一篇是关于HTML方面的知识点,后续如果遇见新题会进行继续的补充什么是 HTML 语义化,有什么好处HTML语义化简单来说就是,段落使用<p></p>,侧边栏用<aside></aside>,主要内容使用<main></main>。有助于构架良好的HTML结构有助于搜索引擎建立索引、抓取,有利于SEO有利于不同设备的解析有利于团队的开发维护为什么要在html文件开头加上一个<!DOCTYPE html>告诉浏览器使用哪个版本的HTML规范来渲染文档。DOCTYPE不存在或形式不正确会导致HTML文档以混杂模式呈现。HTML5为什么只需要写 <!DOCTYPE html>?HTML5不基于SGML,所以不需要引用DTD(DTD 文档类型定义)。在HTML5中<!DOCTYPE>只有一种<!DOCTYPE html>在HTML4.01中,<!DOCTYPE>声明引用DTD,因为HTML4.01基于SGML。DTD规定了标记语言的规则,这样浏览器才能正确的呈现内容。在HTML4.01中有三种<!DOCTYPE>声明。行内元素有哪些?块级元素有哪些?行内元素:a、span、img、input、select块级元素:div、ul、ol、li、pmeta viewport 是做什么用的,怎么写?控制页面在移动端不要缩小显示。<meta name=“viewport” content=“width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0”>HTML5的新增特性新增加了图像、位置、存储、多任务等功能。新增功能标签:可以用作画板的canvas,用于媒介回放的video和audio元素等本地离线存储:localStorage长期存储数据,浏览器关闭后数据不丢失;sessionStorage的数据在浏览器关闭后自动删除语意化更好的标签:figure、footer、header、aside、time 等标签位置API:Geolocation表单控件:calendar date time email url search新的技术:Web Worker(web worker是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何愿意做的事情:点击、选取内容等等,而此时 web worker 在后台运行) Web Socket拖放API:drag、drop离线网路程序:能够让网页在客户端本地高效地离线运行。History API:允许对浏览器历史记录进行操作。这对于那些交互地加载新信息的页面尤其有用。介绍一下你对浏览器内核的理解?主要分成两部分:渲染引擎(Layout Engine或Rendering Engine)和JS引擎。渲染引擎:负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。JS引擎:解析和执行javascript来实现网页的动态效果。最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎。常见的浏览器内核及对应浏览器Trident:IE内核Gecko:Firefox内核Presto:Opera前内核(已废弃)Webkit:Safari内核,Chrome内核原型,开源Blink:由Google和Opera Software开发,Chrome(28及往后版本)、Opera(15及往后版本)和Yandex浏览器中使用