蜜蜂职场文库 > 求职面试 > 面试技巧 >

web面试题及答案

时间: 小龙 面试技巧

  参加web前端面试时,面试者的技术能力能否给面试官展示呢?在面试回答问题中能否获全胜了呢?以下是小编帮你们整理的web面试题及答案,一起来学习啦。

  web面试题及答案(一)

  1.对WEB标准以及W3C的理解与认识

  标签闭合、标签小写、不乱嵌套、提高搜索机器人搜索几率、使用外 链css和js脚本、结构行为表现的分离、文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问、更少的代码和组件,容易维 护、改版方便,不需要变动页面内容、提供打印版本而不需要复制内容、提高网站易用性;

  2.xhtml和html有什么区别

  HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言 最主要的不同:

  XHTML 元素必须被正确地嵌套。

  XHTML 元素必须被关闭。

  标签名必须用小写字母。

  XHTML 文档必须拥有根元素。

  3.Doctype? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义?

  用于声明文档使用那种规范(html/Xhtml)一般为 严格 过度 基于框架的html文档 加入XMl声明可触发,解析方式更改为IE5.5 拥有IE5.5的bug

  4.行内元素有哪些?块级元素有哪些?CSS的盒模型?

  块级元素:div p h1 h2 h3 h4 form ul

  行内元素: a b br i span input select

  Css盒模型:内容,border ,margin,padding

  5.CSS引入的方式有哪些? link和@import的区别是?

  内联 内嵌 外链 导入

  区别 :同时加载

  前者无兼容性,后者CSS2.1以下浏览器不支持

  Link 支持使用javascript改变样式,后者不可

  6.CSS选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先级高?

  标签选择符 类选择符 id选择符

  继承不如指定 Id>class>标签选择

  后者优先级高

  7.前端页面有哪三层构成,分别是什么?作用是什么?

  结构层 Html 表示层 CSS 行为层 js

  8.css的基本语句构成是?

  选择器{属性1:值1;属性2:值2;……}

  9.你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?

  Ie(Ie内核) 火狐(Gecko) 谷歌(webkit) opear(Presto)

  10.写出几种IE6 BUG的解决方法

  1.双边距BUG float引起的 使用display

  2.3像素问题 使用float引起的 使用dislpay:inline -3px

  3.超链接hover 点击后失效 使用正确的书写顺序 link visited hover active

  4.Ie z-index问题 给父级添加position:relative

  5.Png 透明 使用js代码 改

  6.Min-height 最小高度 !Important 解决’

  7.select 在ie6下遮盖 使用iframe嵌套

  8.为什么没有办法定义1px左右的宽度容器(IE6默认的行高造成的,使用over:hidden,zoom:0.08 line-height:1px)

  web面试题及答案(二)

  1.标签上title与alt属性的区别是什么?

  Alt 当图片不显示是 用文字代表。

  Title 为该属性提供信息

  2.描述css reset的作用和用途。

  Reset重置浏览器的css默认属性 浏览器的品种不同,样式不同,然后重置,让他们统一

  3.解释css sprites,如何使用。

  Css 精灵 把一堆小的图片整合到一张大的图片上,减轻服务器对图片的请求数量

  4.浏览器标准模式和怪异模式之间的区别是什么?

  盒子模型 渲染模式的不同

  使用 window.top.document.compatMode 可显示为什么模式

  5.你如何对网站的文件和资源进行优化?期待的解决方案包括:

  文件合并

  文件最小化/文件压缩

  使用CDN托管

  缓存的使用

  6.什么是语义化的HTML?

  直观的认识标签 对于搜索引擎的抓取有好处

  7.清除浮动的几种方式,各自的优缺点

  1.使用空标签清除浮动 clear:both(理论上能清楚任何标签,,,增加无意义的标签)

  2.使用overflow:auto(空标签元素清除浮动而不得不增加无意代码的弊端,,使用zoom:1用于兼容IE)

  3.是用afert伪元素清除浮动(用于非IE浏览器)

  8、Doctype作用? 严格模式与混杂模式如何区分?它们有何意义?

  (1)、声明位于文档中的最前面,处于标签之前。告知浏览器的解析器,用什么文档类型规范来解析这个文档。

  (2)、严格模式的排版和 JS 运作模式是 以该浏览器支持的最高标准运行。

  (3)、在混杂模式中,页面以宽松的向后兼容的方式显示。模拟老式浏览器的行为以防止站点无法工作。

  (4)、DOCTYPE不存在或格式不正确会导致文档以混杂模式呈现。

  9、行内元素有哪些?块级元素有哪些?

  (1)CSS规范规定,每个元素都有display属性,确定该元素的类型,每个元素都有默认的display值, 比如div默认display属性值为“block”,成为“块级”元素; span默认display属性值为“inline”,是“行内”元素。

  (2)行内元素有:a b span img input select strong(强调的语气) 块级元素有:div ulol li dl dtdd h1 h2 h3 h4…p

  10、link 和@import 的区别是?

  (1)link属于XHTML标签,而@import是CSS提供的;

  (2)页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载;

  (3)import只在IE5以上才能识别,而link是XHTML标签,无兼容问题;

  (4)link方式的样式的权重高于@import的权重.

  11、浏览器的内核分别是什么?

  IE浏览器的内核Trident、Mozilla的Gecko、Chrome的Blink(WebKit的分支)、Opera内核原为Presto,现为Blink;

  12、HTML5有哪些新特性?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?

  HTML5 现在已经不是 SGML 的子集,主要是关于图像,位置,存储,多任务等功能的增加。

  绘画 canvas 用于媒介回放的 video 和 audio 元素 本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失; sessionStorage 的数据在浏览器关闭后自动删除 语意化更好的内容元素,比如 article、footer、header、nav、section 表单控件,calendar、date、time、email、url、search 新的技术webworker, websockt, Geolocation

  web面试题及答案(三)

  1.说出Servlet的生命周期,并说出Servlet和CGI的区别?

  Web容器加载servlet并将其实例化后,servlet生命周期开始,容器运行其init方法进行servlet的初始化,请求到达时运行其service方法,service方法自动派遣运行于请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。与CGI的区别在与servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。

  2.forward和redirect的区别?

  forward是容器中控制权的转向,是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。

  redirect就是服务器端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取,并且从浏览器的地址栏中可以看到跳转后的链接地址。

  前者更加高效,在前者可以满足需要时,尽量使用forward()方法,也有助于隐藏实际的链接;在有些情况下,比如需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法。

  3.JSP中动态include与静态include的区别?

  动态include用jsp:include动作实现

  它总是会检查所包含文件中的变化,适合用于包含动态页面,并且可以带参数;静态include用include伪码实现,它不会检查所含文件的变化,适用于包含静态页面

  4.JSP的有哪些内置对象,作用分别是什么?

  request:表示HttpServletRequest对象,它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie,header和session数据的有用方法;

  response:表示HttpServletResponse对象,并提供了几个用于设置送回浏览器的响应的方法(如cookies,头信息等。)

  pageContext:网页的属性在这里管理;

  session:表示一个请求的javax.servlet.http.HttpSession对象,session可以存储用户的状态信息;

  application:表示一个javax.servlet.ServletContext对象,这有助于查找有关servlet引擎和servlet环境的信息;

  out:是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果;

  config:表示一个javax.servlet.ServletConfig对象,该对象用于存取servlet实例的初始化参数;

  page:表示从该页面产生的一个servlet实例;

  exception:针对错误网页,未捕捉的例外。

  5.JSP的常用指令?

  6.JSP有哪些动作,作用分别是什么?

  JSP共有以下6种基本动作:

  jsp:include:在页面被请求的时候引入一个文件;

  jsp:useBean:寻找或者实例化一个JavaBean;

  jsp:setProperty:设置JavaBean的属性;

  jsp:getProperty:输出某个JavaBean的属性;

  jsp:forward:把请求转到一个新的页面;

  jsp:plugin:根据浏览器类型为Java插件生成object标记。

  7.GET和POST的区别?

  form中的get和post方法,在数据传输过程中分别对应了HTTP协议中的GET和POST方法。二者主要区别如下:

  ① Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据;

  ② Get将表单中数据按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL;

  ③ Get是不安全的,因为在传输过程,数据被放在请求的URL中;Post的所有操作对用户来说都是不可见的;

  ④ Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post;

  ⑤ Get限制form表单的数据集必须为ASCII字符,而Post支持整个ISO10646字符集;

  ⑥ Get是from的默认方法。

  8.常用的web容器和开发工具?

  最常用的容器包含:tomcat、weblogic、

  开发工具有:eclipse,jbuilder,JCreator

  9.JSP和Servlet有哪些相同点和不同点,它们之间的联系是什么?

  Jsp是servlet技术的扩展,本质上是servlet的简易方式,更强调应用的视图表达。JSP编译后是“servlet类”。Servlet和JSP最主要的不同点在于,servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,servlet主要用于控制逻辑。

49949