码迷,mamicode.com
首页 > Web开发 > 详细

web前端工程师 面试题

时间:2014-06-17 12:51:05      阅读:309      评论:0      收藏:0      [点我收藏+]

标签:style   class   blog   java   http   ext   

  今天刚结束一场面试(含笔试),对自己的表现不太满意,感觉没有发挥好应有的水平,也只能怪自己平时没有及时积累和整理知识,准备也不充分。

  就不扯那么多了,下面是我面试时,没能答上或者觉自己回答的不够好的题目。

  

1.position 属性规定元素的定位类型

描述
absolute

生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。

元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

fixed

生成绝对定位的元素,相对于浏览器窗口进行定位。

元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

relative

生成相对定位的元素,相对于其正常位置进行定位。

因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。

static 默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
inherit 规定应该从父元素继承 position 属性的值。

  

 

 

 

 

 

 

 

 

2.border-width:

例子 1

border-width:thin medium thick 10px;

  • 上边框是细边框
  • 右边框是中等边框
  • 下边框是粗边框
  • 左边框是 10px 宽的边框

例子 2

border-width:thin medium thick;

  • 上边框是 10px
  • 右边框和左边框是中等边框
  • 下边框是粗边框

 

3.引用css外部文件的方式有哪些?有什么区别?

  使用@import引用外部CSS文件
  使用link引用外部CSS文件 推荐此方法

 

区别1:link是XHTML标签,除了加载CSS外,还可以定义RSS等其他事务;@import属于CSS范畴,只能加载CSS。

区别2:link引用CSS时,在页面载入时同时加载;@import需要页面网页完全载入以后加载。

区别3:link是XHTML标签,无兼容问题;@import是在CSS2.1提出的,低版本的浏览器不支持。

区别4:ink支持使用Javascript控制DOM去改变样式;而@import不支持。

 

4.主流浏览器的前缀是什么?

Firefox:-moz-box-shadow

Safari:-webkit-box-shadow

Opera:-o-box-shadow

IE:-ms-box-shadow

5.浏览器兼容问题的原因?解决方法?

  因为不同浏览器使用内核及所支持的HTML标准通用标记语言下的一个应用)等网页语言标准不同;以及用户客户端的环境不同(如分辨率不同)造成的显示效果不能达到理想效果。最常见的问题就是网页元素位置混乱,错位。

  目前暂没有统一的能解决这样的工具,最普遍的解决办法就是不断的在各浏览器间调试网页显示效果,通过对css样式控制以及通过脚本判断并赋予不同浏览器的解析标准。

 

6.影响网页加载速度的因素有哪些及优化方案?

  答案引用至:http://blog.sina.com.cn/s/blog_6116a35301012ux2.html

 

7.设计模式有哪些?

可以参照《head frist 设计模式》

  一:创建型模式
          工厂方法,抽象工厂,建造者模式,单态模式,原型模式
  二:构造型模式
          适配器模式,桥接模式,组合模式,装饰模式,外观模式
           享元模式,代理模式
  三:行为型模式
           责任链模式,命令模式,解释器模式,迭代器模式,中介者模式
           备忘录模式,观察者模式,状态模式,策略模式,模版方法,访问模式

 

8.B/S 您是用几层结构来开发,每一层之间的关系以及为什么要这样分层?

  一般都是三层,表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。

  分三层是为了使项目架构体系更加清晰,而且项目参与人员的分工也可以更加明确,也有利于项目后期维护,这些都是分层的优点。

  至于关系么,表现层负责与用户交互(数据交互),业务逻辑层就是表现层与数据访问层的中间人了,指派数据访问层进行表现层请求的逻辑性的业务处理,而数据访问层就负责数据的直接操作了(一般只进行直接的数据操作,最好别在这层处理逻辑方面的处理,要不然与业务层交错后后期的维护很头疼的)。

9.什么是JS跨域?跨域的解决方案?

   答案引用至:http://blog.csdn.net/macky0668/article/details/6247803

 

 最后,很感激面试的考官,问的问题都对我很有帮助,还有谢谢人事的X小姐,人很好,谢谢。

 

web前端工程师 面试题,布布扣,bubuko.com

web前端工程师 面试题

标签:style   class   blog   java   http   ext   

原文地址:http://www.cnblogs.com/cchblog/p/3791770.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!