1、1px,1rem,1vh,1em各自代表的含义
rem是全部的长度都相对于根元素,通常做法是给html元素设置一个字体大小,然后其他元素的长度单位就为rem em是相对于该元素的font-size vw/vh,视窗的宽度和高度,相当于屏幕宽度和高度的1%,处理宽度的时候%单位更合适,处理高度的 话 vh 单位更好 px像素,相对长度单位,像素px是相对于显示器屏幕分辨率而言的
2、html5新特性
canvas绘图;svg绘图;地理定位;web worker(运行在后台的js,独立于其他脚本,不会影响页面的性能);web storage(cookie技术,sessionstorage,localstorage);web socket(基于TCP的一种新的网络协议,实现了浏览器与服务器全双工通信,允许服务器主动发送信息给客户端)
3、弹性布局
解决某元素中“子元素”的布局方式,为布局提供最大的灵活性。 设为 flex 布局以后,子元素的 float、clear 和vertical-align属性将失效。 display:flex; 属性align-self 定义子元素的位置。
4、BFC
BFC全称”Block Formatting Context”, 中文为“块级格式化上下文”。 流体特性:块状水平元素,如div元素(下同),在默认情况下(非浮动、绝对定位等),水平方向会自动填满外部的容器; BFC元素特性表现原则就是,内部子元素不会影响外部的元素。
5、简述Chome盒模型与IE盒模型的区别
Chrome盒模型内容大小等于content大小; IE盒模型内容大小等于content + padding + border的总和。
6、xml和json的区别
xml体积比json体积大;json比xml执行速度快;json在结构上比xml清晰;json数据与js有很好的交互性
7、AMD和CMD
AMD和CMD是两种模块定义规范。现在都使用模块化编程,AMD,异步模块定义;CMD,通用模块定义。AMD依赖前置,CMD依赖就近。CMD的API职责单一,没有全局require,AMD的一个API可以多用
8、如何禁止js访问cookie
设置httponly,如果您在cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击
9、Websocket和http的区别
http是用在应用层的协议,他是基于tcp协议的,http协议建立链接也必须要有三次握手才能发送消息。wobsocket是为了解决客户端发起多个http请求到服务器资源浏览器必须要经过长时间的轮训问题而生的,他实现了多路复用,他是全双工通信,在websocket协议下,客户端和服务端可以同时发送信息
10、前端如何压缩图片
通过原生的input标签拿到要上传的图片文件;将图片文件转化成img元素标签;在canvas上压缩绘制该htmlimageelement