页面渲染时, dom 元素所采用的 布局模型 。可通过 box-sizing 进行设置。
根据计算宽高的区域可分为
content-box ( W3C 标准盒模型)
border-box ( IE 盒模型)
padding-box
margin-box (浏览器未实现)
块级格式化上下文, 是⼀个独立的渲染区域,让处于 BFC 内部的元素与外部
的元素相互隔离,使内外元素的定位不会相互影响。
IE下为 Layout , 可通过 zoom:1 触发
触发条件:
根元素
position: absolute/fixed
display: inline-block / table
float 元素
ovevflow !== visible
规则:
属于同⼀个BFC的两个相邻Box垂直排列
属于同⼀个 BFC 的两个相邻 Box 的 margin 会发生重叠
BFC 中子元素的 margin box 的左边, 与包含块 (BFC) border box 的左边相接触
(子元素 absolute 除外)
BFC 的区域不会与 float 的元素区域重叠
计算 BFC 的高度时, 浮动子元素也参与计算
文字层不会被浮动层覆盖,环绕于周围
应用:
阻止 margin 重叠
可以包含浮动元素 —— 清除内部浮动(清除浮动的原理是两个 div 都位于同⼀个 BFC 区
域之中)
自适应两栏布局
可以阻止元素被浮动元素覆盖
元素提升为⼀个比较特殊的图层,在三维空间中 (z轴) 高出普通元素⼀等。
触发条件
根层叠上下文( html )
position
css3 属性
flex
transform
opacity
filter
will-change
webkit-overflow-scrolling
层叠等级:层叠上下文在z轴上的排序
在同⼀层叠上下文中, 层叠等级才有意义
z-index 的优先级最高
行内元素: text-align: center
块级元素: margin: 0 auto
absolute + transform
flex + justify-content: center
垂直居中
line-height: height
absolute + transform
flex + align-items: center
table
水平垂直居中
absolute + transform
flex + justify-content + align-items
!important > 行内样式 > #id > .class >
选择器 从右往左 解析
tag > * > 继承 > 默认
通过增加尾元素清除浮动
:after /
: clear: both
创建父级 BFC
父级设置高度
link 功能较多, 可以定义 RSS ,定义 Rel 等作用, 而 @import 只能用于加载 css
当解析到 link 时, 页面会同步加载所引的 css , 而 @import 所引用的 css 会等到页
面加载完才被加载
@import 需要 IE5
link 可以使用 js
以上才能使用
动态引入, @import 不行
CSS 预处理器的原理: 是将类 CSS 语言通过 Webpack 编译 转成浏览器可
读的真正 CSS 。在这层编译之上, 便可以赋予 CSS 更多更强大的功能, 常
用功能:
嵌套
变量
循环语句
条件语句
自动前缀
单位转换
mixin 复用
面试中⼀般不会重点考察该点,⼀ 般介绍下自己在实战项目中的经验即可~
transition: 过渡动画
transition-property : 属性
transition-duration : 间隔
transition-timing-function : 曲线
transition-delay : 延迟
常用钩子: transitionend
animation / keyframes
animation-name : 动画名称,对应 @keyframes
animation-duration : 间隔
animation-timing-function : 曲线
animation-delay : 延迟
animation-iteration-count : 次数
infinite : 循环动画
animation-direction : 方向
alternate : 反向播放
animation-fill-mode : 静止模式
forwards : 停止时,保留最后⼀帧
backwards : 停止时, 回到第⼀帧
both : 同时运用 forwards / backwards
常用钩子: animationend
动画属性: 尽量使用动画属性进行动画, 能拥有较好的性能表现
translate
scale
rotate
skew
opacity
color
上一篇:Kotlin 核心面试题