【IMWeb秋招训练营】【Day9】面试题总结

经典面试题

33.HTML5 为什么只需要写 ?
  • HTML5 不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行);
  • 而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。
    名词解释
  • SGML: 标准通用标记语言。规定了在文档中嵌入描述标记的标准格式,指定了描述文档结构的标准方法。XML和HTML都由此引出。
  • DTD:文档类型定义。
    • HTML4.1有三种声明,分别是严格模式、过渡模式和框架模式。
    • 严格模式包含有HTML元素和属性,但不包括展示性的和弃用的元素,不允许框架集。
    • 过渡模式包含所有HTML元素和属性,包括展示性和弃用的元素。不允许框架集。
    • 框架模式等同于过渡模式,但允许框架集内容。
    • HTML5只有一种格式,就是。
34.页面导入样式时,使用link和@import有什么区别?
  • link是XHTML标签,除了加载CSS外,还可以定义RSS等其他事务;@import属于CSS范畴,只能加载CSS。
  • link引用CSS时,在页面载入时同时加载;@import需要页面网页完全载入以后加载。
  • link是XHTML标签,无兼容问题;@import是在CSS2.1提出的,低版本的浏览器不支持。
  • link支持使用Javascript控制DOM去改变样式;而@import不支持。
35.介绍一下你对浏览器内核的理解?
  • 主要分成两部分:渲染引擎(layout engineer或Rendering Engine)和JS引擎。
  • 渲染引擎:负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核。
  • JS引擎:解析和执行javascript来实现网页的动态效果。最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎。
36.IE和DOM事件流的区别?
  • IE->事件冒泡流。即事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播到较为不具体的节点(文档)。
  • Netscape->事件捕获流。思想是不太具体的节点应该更早接收到事件,而最具体的节点应该最后接收到事件。其用意在于事件到达预定目标之前捕获它。
  • “DOM2级事件”规定的事件流包括三个阶段:事件捕获阶段、处于目标阶段和事件冒泡阶段。

思考题

17.前端安全方面有没有了解?CSRF 如何攻防?
  • 通过 referer、token 或者 验证码 来检测用户提交。
  • 尽量不要在页面的链接中暴露用户隐私信息。
  • 对于用户修改删除等操作最好都使用post 操作 。
  • 避免全站通用的cookie,严格设置cookie的域。

传送门: http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html

18.说说你对 SVG 理解?

传送门: http://blog.csdn.net/qq522935502/article/details/45073897

你可能感兴趣的:(【IMWeb秋招训练营】【Day9】面试题总结)