一.css(css3、sass、less) 盒子模型:
html文档中的每个元素都被描绘成矩形盒子,这些矩形盒子通过一个模型来描述其占用空间,这个模型称为盒模型。盒模型通过四个边界来描述:margin(外边距),border(边框),padding(内边距),content(内容区域),如图所示:box-sizing:
content-box(默认):长宽=内容; border-box:长宽=边+padding+内容rem(1px实现):rem(font size of the root element)是指相对于根元素的字体大小的单位。简单的说它就是一个相对单位。rem bfc:是Web页面中盒模型布局的CSS渲染模式。它的定位体系属于常规文档流 浮动,绝对定位元素,inline-blocks, table-cells, table-captions,和overflow的值不为visible的元素,(除了这个值已经被传到了视口的时候)将创建一个新的块级格式化上下文 用处:BFC导致的外边距折叠、使用BFC来防止外边距折叠(内部在创建一个bfc)、使用BFC来包含浮动(overflow:hidden)、使用BFC来防止文字环绕、在多列布局中使用BFC 垂直居中:垂直居中
css3新特性(动画) 块级元素和行内元素 sass方法和使用 清除浮动的方法:(overflow:hidden 为什么可以清除浮动)二.html(h5)
浏览器渲染原理:DNS 查询 TCP 连接 HTTP 请求即响应 服务器响应 客户端渲染 重构和重绘 html全局属性:id class lang data-* hidden web语义话:去掉样式后页面呈现清晰结构、盲人易阅读、方便搜索引擎、可维护性 浏览器输入url到显示页面的步骤:输入url,查看缓存,如果在缓存中并且新鲜 跳转到转马库;如果资源没有缓存;发起新请求,如果在缓存 不新鲜,与服务器进行验证(检查新鲜有两个http头进行控制:1、expires: 新鲜日期2、cache-control:以秒为单位的最大新鲜时间);浏览器解析url获取协议(HTTP/HTTPS)、主机、端口、path;浏览器组装http请求报文;浏览器获取主机地址。。。 viewport:移动端1px实现 meta: http状态码:1XX 信息状态码;2XX成功;3XX重定向;4XX客户端错误;5XX服务器错误 http请求的headers有哪些 什么是渐进增强三.js(es6、jq)
cookie、localstore、sessionstore:大小 跨域原理及解决方案 call/apply 最常用的数组操作方法: 数组和对象的深拷贝、浅拷贝: 原型、原型链 js设计模式:工厂模式、构造函数模式、原型链模式 es6相关语法:数组扩展、对象扩展、箭头函数 什么是闭包、作用 全局作用域、块级作用域 js垃圾回收机制:标记清除(主流)、引用计数(IE曾用,循环引用会出问题) 继承的实现 object.creat es6异步函数 异步同步:ajax异步实现原理 promise和$.Deffred的区别,promise的状态 jQuery的链式原理,经典面试题lazyman 事件冒泡、事件捕获、事件委托、事件广播 判断数据类型:判断是否是函数、数组,Object.prototype.toString.call 、 typeof 数组去重 加载文件的时候,浏览器如何知道文件过期需要重新加载,加版本号为什么就可以避免缓存(酷家乐)四.http
http和https区别 五.源码 vue双向绑定 jq源码 vuerouter源码六.mvvm框架
数据绑定原理 单向数据流 三个之间的区别angularjs 1.x:
controller之间的通信方式: ag-if、ag-show区别 :vue2:
生命周期钩子函数 组件之间的通信方法react:
虚拟dom七.web安全
xss、csrf八.webpack 用过的loader 原理
九.算法
排序算法十.网站性能优化
懒加载 css、js文件位置