欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
  1.XHTML和HTML有什么区别
 
  HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言
 
  最主要的不同:
 
  XHTML元素必须被正确地嵌套。
 
  XHTML元素必须被关闭。
 
  标签名必须用小写字母。
 
  XHTML文档必须拥有根元素。
 
  2.什么是语义化的HTML?
 
  直观的认识标签对于搜索引擎的抓取有好处,用正确的标签做正确的事情!
 
  html语义化就是让页面的内容结构化,便于对浏览器、搜索引擎解析;
 
  在没有样式CCS情况下也以一种文档格式显示,并且是容易阅读的。搜索引擎的爬虫依赖于标记来确定上下文和各个关键字的权重,利于SEO。
 
  使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。
 
  3.常见的浏览器内核有哪些?
 
  Trident内核:IE,MaxThon,TT,TheWorld,360,搜狗浏览器等。[又称MSHTML]Gecko内核:Netscape6及以上版本,FF,MozillaSuite/SeaMonkey等
 
  Presto内核:Opera7及以上。[Opera内核原为:Presto,现为:Blink;]Webkit内核:Safari,Chrome等。[Chrome的:Blink(WebKit的分支)]
 
  4.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
 
  移除的元素
 
  https://www.jkys120.com/article/95306/
 
  纯表现的元素:basefont,big,center,font,s,strike,tt,u;
 
  对可用性产生负面影响的元素:frame,frameset,noframes;
 
  支持HTML5新标签:
 
  IE8/IE7/IE6支持通过document.createElement方法产生的标签,
 
  可以利用这一特性让这些浏览器支持HTML5新标签,
 
  浏览器支持新标签后,还需要添加标签默认的样式:
 
  5.请描述一下cookies,sessionStorage和localStorage的区别?
 
  cookie在浏览器和服务器间来回传递。sessionStorage和localStorage不会
 
  sessionStorage和localStorage的存储空间更大;
 
  sessionStorage和localStorage有更多丰富易用的接口;
 
  sessionStorage和localStorage各自独立的存储空间;
 
  6.如何实现浏览器内多个标签页之间的通信?
 
  调用localstorge、cookies等本地存储方式
 
  7.HTML5为什么只需要写!DOCTYPEHTML?
 
  HTML5不基于SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行);而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。
 
  8.Doctype作用?标准模式与兼容模式各有什么区别?
 
  !DOCTYPE声明位于位于HTML文档中的第一行,处于html标签之前。告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。
 
  标准模式的排版和JS运作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。
 
  9.Doctype?严格模式与混杂模式-如何触发这两种模式,区分它们有何意义?
 
  用于声明文档使用那种规范(html/Xhtml)一般为严格过度基于框架的html文档。
 
  加入XMl声明可触发,解析方式更改为IE5.5拥有IE5.5的Bug。
 
  10.请描述一下cookies,sessionStorage和localStorage的区别?
 
  cookie在浏览器和服务器间来回传递。sessionStorage和localStorage不会
 
  sessionStorage和localStorage的存储空间更大;
 
  sessionStorage和localStorage有更多丰富易用的接口;
 
  sessionStorage和localStorage各自独立的存储空间;
 
  11.如何实现浏览器内多个标签页之间的通信?
 
  调用localstorge、cookies等本地存储方式
 
  CSS相关问题
 
  1.CSS实现垂直水平居中
 
  一道经典的问题,实现方法有很多种,以下是其中一种实现:
 
  HTML结构:
 
  <divclass=”wrapper”>
 
  <divclass=”content”></div>
 
  </div>
 
  CSS:
 
  .wrapper{position:relative;}
 
  .content{
 
  width:200px;
 
  height:200px;
 
  position:absolute;//父元素需要相对定位
 
  top:50%;
 
  left:50%;
 
  margin-top:-100px;//二分之一的height,width
 
  margin-left:-100px;
 
  }
 
  2.display有哪些值?说明他们的作用。
 
  block块类型。默认宽度为父元素宽度,可设置宽高,换行显示。
 
  none缺省值。象行内元素类型一样显示。
 
  inline行内元素类型。默认宽度为内容宽度,不可设置宽高,同行显示。
 
  inline-block默认宽度为内容宽度,可以设置宽高,同行显示。
 
  list-item象块类型元素一样显示,并添加样式列表标记。
 
  table此元素会作为块级表格来显示。
 
  inherit规定应该从父元素继承display属性的值。
 
  3.行内元素有哪些?块级元素有哪些?CSS的盒模型?
 
  块级元素:div,p,h1,form,ul,li;
 
  行内元素:span>,a,label,input,img,strong,em;
 
  CSS盒模型:内容,border,margin,padding
 
  4.CSS引入的方式有哪些?link和@import的区别是?
 
  内联内嵌外链导入
 
  区别:同时加载
 
  前者无兼容性,后者CSS2.1以下浏览器不支持
 
  Link支持使用javascript改变样式,后者不可
 
  5.CSS选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先级高?
 
  标签选择符类选择符id选择符
 
  继承不如指定Id>class>标签选择
 
  后者优先级高
 
  6.CSS清除浮动的几种方法(至少两种)
 
  使用带clear属性的空元素
 
  使用CSS的overflow属性;
 
  使用CSS的:after伪元素;
 
  使用邻接元素处理;
 
  7.CSS居中(包括水平居中和垂直居中)
 
  内联元素居中方案
 
  水平居中设置:
 
  1.行内元素
 
  设置text-align:center;
 
  2.Flex布局
 
  设置display:flex;justify-content:center;(灵活运用,支持Chroime,Firefox,IE9+)
 
  垂直居中设置:
 
  1.父元素高度确定的单行文本(内联元素)
 
  设置height=line-height;
 
  2.父元素高度确定的多行文本(内联元素)
 
  a:插入table(插入方法和水平居中一样),然后设置vertical-align:middle;
 
  b:先设置display:table-cell再设置vertical-align:middle;
 
  块级元素居中方案
 
  水平居中设置:
 
  1.定宽块状元素
 
  设置左右margin值为auto;
 
  2.不定宽块状元素
 
  a:在元素外加入table标签(完整的,包括table、tbody、tr、td),该元素写在td内,然后设置margin的值为auto;
 
  b:给该元素设置displa:inine方法;
 
  c:父元素设置position:relative和left:50%,子元素设置position:relative和left:50%;
 
  垂直居中设置:
 
  使用position:absolute(fixed),设置left、top、margin-left、margin-top的属性;
 
  利用position:fixed(absolute)属性,margin:auto这个必须不要忘记了;
 
  利用display:table-cell属性使内容垂直居中;
 
  使用css3的新属性transform:translate(x,y)属性;
 
  使用:before元素;
 
  8.在书写高效CSS时会有哪些问题需要考虑?
 
  reset。参照上题“描述下“reset”CSS文件的作用和使用它的好处”的答案。
 
  规范命名。尤其对于没有语义化的html标签,例如div,所赋予的class值要特别注意。
 
  抽取可重用的部件,注意层叠样式表的“优先级”。
 
  JS相关问题
 
  1.谈一谈JavaScript作用域链
 
  当执行一段JavaScript代码(全局代码或函数)时,JavaScript引擎会创建为其创建一个作用域又称为执行上下文(ExecutionContext),在页面加载后会首先创建一个全局的作用域,然后每执行一个函数,会建立一个对应的作用域,从而形成了一条作用域链。每个作用域都有一条对应的作用域链,链头是全局作用域,链尾是当前函数作用域。
 
  作用域链的作用是用于解析标识符,当函数被创建时(不是执行),会将this、arguments、命名参数和该函数中的所有局部变量添加到该当前作用域中,当JavaScript需要查找变量X的时候(这个过程称为变量解析),它首先会从作用域链中的链尾也就是当前作用域进行查找是否有X属性,如果没有找到就顺着作用域链继续查找,直到查找到链头,也就是全局作用域链,仍未找到该变量的话,就认为这段代码的作用域链上不存在x变量,并抛出一个引用错误(ReferenceError)的异常。
 
  2.如何理解JavaScript原型链
 
  JavaScript中的每个对象都有一个prototype属性,我们称之为原型,而原型的值也是一个对象,因此它也有自己的原型,这样就串联起来了一条原型链,原型链的链头是object,它的prototype比较特殊,值为null。
 
  原型链的作用是用于对象继承,函数A的原型属性(prototypeproperty)是一个对象,当这个函数被用作构造函数来创建实例时,该函数的原型属性将被作为原型赋值给所有对象实例,比如我们新建一个数组,数组的方法便从数组的原型上继承而来。
 
  当访问对象的一个属性时,首先查找对象本身,找到则返回;若未找到,则继续查找其原型对象的属性(如果还找不到实际上还会沿着原型链向上查找,直至到根).只要没有被覆盖的话,对象原型的属性就能在所有的实例中找到,若整个原型链未找到则返回undefined
 
  3.JavaScript如何实现继承?
 
  构造继承
 
  原型继承
 
  实例继承
 
  拷贝继承
 
  原型prototype机制或apply和call方法去实现较简单,建议使用构造函数与原型混合方式。
 
  functionParent(){
 
  this.name=‘wang’;
 
  }
 
  functionChild(){
 
  this.age=28;
 
  }
 
  Child.prototype=newParent();//继承了Parent,通过原型
 
  vardemo=newChild();
 
  alert(demo.age);
 
  alert(demo.name);//得到被继承的属性
 
  4.JavaScript的typeof返回哪些数据类型
 
  Objectnumberfunctionbooleanunderfind;
 
  5.例举3种强制类型转换和2种隐式类型转换?
 
  强制(parseInt,parseFloat,number)隐式(==–===);
 
  6.split()join()的区别
 
  前者是切割成数组的形式,后者是将数组转换成字符串
 
  7.数组方法pop()push()unshift()shift()
 
  Push()尾部添加pop()尾部删除
 
  Unshift()头部添加shift()头部删除
 
  8.IE和DOM事件流的区别
 
  执行顺序不一样、
 
  参数不一样
 
  事件加不加on
 
  this指向问题
 
  9.ajax请求的时候get和post方式的区别
 
  一个在url后面一个放在虚拟载体里面
 
  有大小限制
 
  安全问题
 
  应用不同一个是论坛等只需要请求的,一个是类似修改密码的
 
  https://www.jkys120.com/article/95306/
 
  10.IE和标准下有哪些兼容性的写法
 
  Varev=ev||window.event
 
  document.documentElement.clientWidth||document.body.clientWidth
 
  Vartarget=ev.srcElement||ev.target
 
  11.ajax请求时,如何解释json数据
 
  使用evalparse,鉴于安全性考虑使用parse更靠谱;
 
  12.事件委托是什么
 
  让利用事件冒泡的原理,让自己的所触发的事件,让他的父元素代替执行!
 
  13.闭包是什么,有什么特性,对页面有什么影响?简要介绍你理解的闭包
 
  闭包就是能够读取其他函数内部变量的函数。
 
  14.添加删除替换插入到某个接点的方法
 
  obj.appendChidl()
 
  obj.innersetBefore
 
  obj.replaceChild
 
  obj.removeChild
 
  15..”==”和“===”的不同
 
  前者会自动转换类型,后者不会
 
  16.编写一个b继承a的方法
 
  functionA(name){
 
  this.name=name;
 
  this.sayHello=function(){alert(this.name+”sayHello!”);};
 
  }
 
  functionB(name,id){
 
  this.temp=A;
 
  this.temp(name);//相当于newA();
 
  deletethis.temp;
 
  this.id=id;
 
  this.checkId=function(ID){alert(this.id==ID)};
 
  }
 
  17.如何阻止事件冒泡和默认事件
 
  functionstopBubble(e)
 
  {
 
  if(e&&e.stopPropagation)
 
  e.stopPropagation()
 
  else
 
  window.event.cancelBubble=true
 
  }
 
  returnfalse
 
  18.下面程序执行后弹出什么样的结果?
 
  functionfn(){
 
  this.a=0;
 
  this.b=function(){
 
  alert(this.a)
 
  }
 
  }
 
  fn.prototype={
 
  b:function(){
 
  this.a=20;
 
  alert(this.a);
 
  },
 
  c:function(){
 
  this.a=30;
 
  alert(this.a);
 
  }
 
  }
 
  varmyfn=newfn();
 
  myfn.b();
 
  myfn.c();
 
  19.谈谈This对象的理解。
 
  this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。
 
  但是有一个总原则,那就是this指的是调用函数的那个对象。
 
  this一般情况下:是全局对象Global。作为方法调用,那么this就是指这个对象
 
  20.下面程序的结果
 
  functionfun(n,o){
 
  console.log(o)
 
  return{
 
  fun:function(m){
 
  returnfun(m,n);
 
  }
 
  };
 
  }
 
  vara=fun(0);a.fun(1);a.fun(2);a.fun(3);
 
  varb=fun(0).fun(1).fun(2).fun(3);
 
  varc=fun(0).fun(1);c.fun(2);c.fun(3);
 
  //答案:
 
  //a:undefined,0,0,0
 
  //b:undefined,0,1,2
 
  //c:undefined,0,1,1
 
  21.下面程序的输出结果
 
  varname='World!';
 
  (function(){
 
  if(typeofname==='undefined'){
 
  varname='Jack';
 
  console.log('Goodbye'+name);
 
  }else{
 
  console.log('Hello'+name);
 
  }
 
  })();
 
  22.了解Node么?Node的使用场景都有哪些?
 
  高并发、聊天、实时消息推送
 
  23.介绍下你最常用的一款框架
 
  jquery,rn,angular等;
 
  24.对于前端自动化构建工具有了解吗?简单介绍一下
 
  Gulp,Grunt等;
 
  25.说一下什么是JavaScript的同源策略?
 
  一段脚本只能读取来自于同一来源的窗口和文档的属性,这里的同一来源指的是主机名、协议和端口号的组合
 
  代码相关的问题
 
  1.说说最近最流行的一些东西吧?常去哪些网站?
 
  Node.js、MVVM、React-native,Angular,Weex等
 
  CSDN,Segmentfault,博客园,掘金,Stackoverflow,伯乐在线等
 
  2.如果今年你打算熟练掌握一项新技术,那会是什么?
 
  via开发单页webapp的技术。
 
  SAP能够是页面与页面之间无缝连接,避免出现白页,且带有动态效果,提高用户体验。同时SAP,有JavaScript渲染页面,然后在从服务器获取小量的数据显示,如此反复,请求的数据无需要服务器处理,减少服务器负荷。
 
  SAP对技术要求高。要考虑首屏加载事件过长;动画效果要考虑低端手机;垃圾收集,需要自己释放资源,避免页面变卡。

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h55085.shtml