面试题之CSS
这篇也是一篇整理稿,大部分都是网上抄的。
1.对BFC规范(块级格式化上下文:block formatting context)的理解?
BFC规定了内部的Block Box如何布局。定位方案:
内部的Box会在垂直方向上一个接一个放置。
Box垂直方向的距离由margin决定,属于同一个BFC的两个相邻Box的margin会发生重叠。
每个元素的margin box 的左边,与包含块border box的左边相接触。
BFC的区域不会与float box重叠。
BFC是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。
计算BFC的高度时,浮动元素也会参与计算。
满足下列条件之一就可触发BFC
根元素,即html
float的值不为none(默认)
overflow的值不为visible(默认)
display的值为inline-block、table-cell、table-caption
position的值为absolute或fixed
1.50道CSS基础面试题(附答案)
2.stacking context(层叠上下文),布局规则
1.z 轴上的默认层叠顺序如下(从下到上):(1)根元素的边界和背景。(2)常规流中的元素按照 html 中顺序。(3)浮动块。(4)positioned 元素按照 html 中出现顺序。
2.如何创建 stacking context:(1) 根元素。(2) z-index 不为 auto 的定位元素。(3)a flex item with a z-index value other than ‘auto’。(4)opacity 小于 1 的元素。(5)在移动端 webkit 和 chrome22+,z-index 为 auto,position: fixed 也将创建新的 stacking context。