面试重点

来源:互联网 发布:防止流量偷跑软件 编辑:程序博客网 时间:2024/05/22 11:56
一、兼容性处理-css
1, 双间距bug float引起的   display:inline;
2, 高度小于十像素容器的问题 ie6最小高度的问题限制  font-size:0
3, ie6不能定义1px高度的容器  是ie6默认行高造成的  解决 over:hidden,zoom:0.08 line-height:1px
4, ie6 png24透明图片问题  js解决
5, select 层级过高  在ie6下遮罩  使用iframe嵌套
6, ie6下设置透明度问题 Filter:alpha(opacity=50)
7, ie z-index 不起作用问题  设置父元素position:relative;
8, 超链接hover 点击后失效问题   正确顺序书写 link visited hover active
9, ie6 7 8 下行内元素在浮动之前的兄弟元素  浮动之后 浮动元素折行  1)利用hack设置一个负的上边距 2)换位置
10, img图片下的默认高度  img(display:block)
11, ie6 底部3pxbug  用浮动解决
12, display:inline-block ie67下不兼容   float:left
13, position:fixed   ie6下不兼容

二、减少页面加载时间的方法-前端优化
1, css 放顶部 js放底部
2, 压缩css js
3, 合并css js 减少http请求
4, css sprite 图片 减少http请求
5, 减少dom操作
6, 外部css js放底部
7, 图片按需加载
8, CDN 缓存

三、get 和post的区别
  • GET在浏览器回退时是无害的,而POST会再次提交请求。
  • GET产生的URL地址可以被Bookmark,而POST不可以。
  • GET请求会被浏览器主动cache,而POST不会,除非手动设置。
  • GET请求只能进行url编码,而POST支持多种编码方式。
  • GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
  • GET请求在URL中传送的参数是有长度限制的,而POST么有。
  • 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
  • GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
  • GET参数通过URL传递,POST放在Request body中。

  •  四、渐进增强 优雅降级

    渐进增强(Progressive Enhancement):一开始就针对低版本浏览器进行构建页面,完成基本的功能,然后再针对高级浏览器进行效果、交互、追加功能达到更好的体验。

    优雅降级(Graceful Degradation):一开始就构建站点的完整功能,然后针对浏览器测试和修复。比如一开始使用 CSS3 的特性构建了一个应用,然后逐步针对各大浏览器进行 hack 使其可以在低版本浏览器上正常浏览。
    向上兼容向下兼容
    渐进增强相当于向上兼容,而优雅降级相当于向下兼容
    eg.
    .transition { /*渐进增强写法*/ -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s;}.transition { /*优雅降级写法*/ transition: all .5s; -o-transition: all .5s; -moz-transition: all .5s; -webkit-transition: all .5s;}