转眼就2019年了,感觉市场上的前端比去年又多了不少,前端岗位虽然仍有大量需求,但是岗位的要求也相对高了许多,下面我想把我收集的高频发的面试题写下来,希望对各位有帮助。因为我刚写博客,又喜欢精简记忆,所以写的不好请轻喷。
一、css篇
1.什么是盒模型
答: 盒模型就是margin+border+padding+content+padding+border+margin。
分为IE模型和标准模型。
它们的不同点在于IE盒子的width=border+padding+content+padding。
而标准盒子的width=content。
2.边距重叠解决方案(BFC)
答:首先要明确BFC是什么意思,其全英文拼写为 Block Formatting Context 直译为“块级格式化上下文”
BFC的原理
1.内部的box会在垂直方向,一个接一个的放置。
2.每个元素的margin box的左边,与包含块borderbox的左边相接触(对于从做往右的格式化,否则相反)。
3.box垂直方向的距离由margin决定,属于同一个bfc的两个相邻box的margin会发生重叠。
4.bfc的区域不会与浮动区域的box重叠。
5.bfc是一个页面上的独立的容器,外面的元素不会影响bfc里的元素,反过来,里面的也不会影响外面的。
6.计算bfc高度的时候,浮动元素也会参与计算。
怎么取创建bfc
1.float属性不为none(脱离文档流)。
2.position为absolute或fixed。
3.display为inline-block,table-cell,table-caption,flex,inine-flex。
4.overflow不为visible。
5.根元素。
应用场景
1.自适应两栏布局
2.清除内部浮动
3.防止垂直margin重叠