欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

web前端面试题汇总

程序员文章站 2022-06-09 21:12:57
...

什么是盒子模型?

在网页中,一个元素占所有空间的大小由几个部分构成,其中包括元素的内容(content)、元素的内边距(padding)、元素的边框(border)、元素的外边距(margin)四个部分。这个四个部分占有的空间中,有的部分可以显示相应的内容,而有的部分只用来分隔相邻的区域,四个部分一起构成了CSS中元素的盒模型。

行内元素有哪些?块级元素有哪些?空(void)元素有哪些?

行内元素:a 、 b 、span、img、input、strong、select、label、em、button、textarea
块级元素:div、ul、li、dl、dt、dd、p、h1-h6、blockquote
空元素:即没有内容的HTML元素,例如:br、meta、hr、link、input、img

CSS实现垂直水平居中

<div class="wrapper">
  <div class="content"></div>
</div>
css代码
.wrapper{
  position:relative;
  width:500px;
  height:500px;
  background-color:#ddd;
}
.content{
  background-color:#6699ff;
  width:200px;
  height:200px;
  position:absolute;
  top:50%;
  left:50%;
  margin-top:-100px;
  margin-left:-100px;
}

src与href的区别

href 是指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接,用于超链接
src 是指向外部资源的位置,指向的内容将会嵌入到文档中当前标签所在位置,在请求src资源时会将其指向的资源下载并应用到文档内,例如js脚本,img图片和frame等元素,当浏览器解析到改元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等元素也如此,类似于将所指向资源嵌入当前标签内,这也是为什么将js脚本放在底部而不是头部

什么是CSS Hack?

一般来说是针对不同的浏览器写不同的CSS,就是CSS Hack

简述同步和异步的区别

同步是阻塞模式,异步是非阻塞模式
同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去
异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态,当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。

px和em的区别

px和em都是长度单位,区别是,px的值是固定的,指定是多少就是多少,计算比较容易
em的值不是固定的,并且em会继承父级元素的字体大小
浏览器的默认字体都是16px,所以未经调整的浏览器都符合:1em = 16px,那么 12px = 0.75em,10px = 0.625em

什么是优雅降级和渐进增强

渐进增强:针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。
优雅降级:一开始就构建完整的功能,然后再针对低版本浏览器进行兼容
区别:

  • 优雅降级是从复杂的现状开始,并试图减少用户体验的供给
  • 渐进增强则是从一个非常基础的,能够起作用的版本开始,并不断扩充,以适应未来环境的需要
  • 降级(功能衰减)意味着往回看;而渐进增强则意味着朝前看,同时保证其根基处于安全地带