[toc]
## margin重叠
只会发生在writing-mode的垂直方向
![](https://box.kancloud.cn/0cabb55c2be5e87baaebaefafa2dd4f1_470x278.png)
### 父子重叠:margin穿透
第二种情况又称之为margin穿透
![](https://box.kancloud.cn/7779a915833e6fb4813382103fe1569c_613x307.png)
#### 父子重叠发生的条件与防止
![](https://box.kancloud.cn/f29fafe71b0d075f2f4cd5daf2b9e5f9_849x447.png)
空格也算一个内联元素,也能防止margin重叠
### 空block元素margin重叠
![](https://box.kancloud.cn/f8522d915ebd2c2209a6c2582a60af34_687x358.png)
#### 空block元素margin重叠发生的条件与防止
![](https://box.kancloud.cn/12c70d2725bbff75467ed1d5b8568f21_521x368.png)
### 计算规则
正正取大值
正负值相加
负负最负值
### 初衷
![](https://box.kancloud.cn/f99cbe7cd9ac41a3c9fde82d0db9cd1d_821x341.png)
## 百分比单位
margin-top/left,水平竖直方向**都**是相对于父容器的**宽度**来计算的
## margin负值:改变元素占据的空间
margin负值偏移不像relative的偏移,relative再怎么偏移,实际占据的位置就是最初的位置
,而margin负值偏移时,会腾出不再占据的位置,并且它(margin-left/top)**侵入**到别人的地盘,也是悄无声息的**不**会占据位置(显示效果为覆盖)
### margin-top/left负值和bottom/right负值比较
margin-top/left 看起来是整个元素都往某个方向进行了偏移(腾出不再占据的位置,但侵入到其它元素地盘的部分并不占据位置)
而margin-bottom/right 则看起来整个元素并没有动,但其实它实际占据的位置被收缩了
### 与overflow:hidden
如果设置了overflow:hidden,那么通过margin负值偏移时腾出的原本占据的位置部分会被裁减掉(无论margin-top还是bottom)
![](https://box.kancloud.cn/563eaaa7ecf95b83276674ac35db93de_457x214.png)
### 与float
![](https://box.kancloud.cn/e6a4fe2302f1c16da9eff41756d13f1e_629x392.png)
- 空白目录
- 未处理
- webpack中的css模块化
- CSS预处理器
- 效果
- 元素装饰与美化
- 颜色
- checkbox
- img
- background
- clip-path
- 字体
- 文本控制
- text-indent
- letter-spacing
- word-spacing
- word-break和word-wrap
- white-space
- text-align
- text-decoration
- text-transform
- first-letter
- first-line
- 有关CSS百分单位的那些奇葩事儿
- 破坏性、包裹性、块状化
- 强大的absolute
- padding
- relative
- 继承性
- fixed
- float
- BFC
- z-index
- overflow
- clip
- 最佳可访问性隐藏
- 关于scrollHeight/Width
- 包含块
- margin
- 布局系统
- 杂
- Flex
- Grid
- 自定义布局系统
- gutter实现思路
- 选择器
- 伪元素和伪类
- css3
- appearance
- CSS2.1
- tmp
- 未定义行为
- 焦点元素
- outline轮廓
- 替换元素
- 盒子模型
- 块级元素/盒子
- 标记盒子
- 容器盒子(内在盒子)
- 内联元素/盒子
- 字母X
- line-height
- vertical-align
- font-size
- 内联元素盒子模型新解
- line-height定义
- line-height与行内框盒子模型
- line-height与内联元素的高度机制
- line-height值
- line-height与图片
- vertical-align支持的属性值及组成
- vertical-align起作用前提
- vertical-align与图片
- vertical-align与line-height
- vertical-align前后不一的行为表现
- vertical-align实际应用
- line-height与height
- width/height与auto
- 最小内容宽度
- 最大内容宽度
- min/max-width/height注意事项
- 流:外部尺寸与内部尺寸
- 流体布局下的宽度分离原则
- height:auto
- 浏览器渲染原理
- 移动端