导航
怪异盒模型触发条件
如果 HTML 文件最顶部 doctype 缺失,则在 ie6、7、8 将会触发怪异模式(quirks);
box-sizing: content-box; /* 标准模型 */
box-sizing: border-box; /* IE 模型 */
box-sizing: inherit; /* 从父元素来继承 box-sizing 属性的值 */
inline
pending、margin 水平方向上设置有效,垂直方向上无效inline-block
pending、margin 设置有效block
pending、margin 设置有效display: none |
不占空间,不可点击 | (回流 + 重绘) |
|---|---|---|
visibility: hidden |
占据空间,不可点击 | (重绘) |
opacity: 0 |
占据空间,可以点击 | (重建图层,性能较高) |
更多:分析比较 opacity: 0、visibility: hidden、display: none 优劣和适用场景
| 值 | 是否脱标占有位置 | 可使用边偏移 | 描述 |
|---|---|---|---|
| static | 不脱标,正常模式 | 不可以 | 自动(没有)定位(默认定位方式) |
| relative(自恋) | 不脱标,占有位置 | 可以 | 相对定位,相对于其原文档流的位置进行定位 |
| absolute(拼爹) | 完全脱标,不占位置 | 可以 | 绝对定位,相对于其上一个已经定位(不为 static)的父元素进行定位 |
| fixed(浏览器) | 完全脱标,不占位置 | 可以 | 固定定位,相对于浏览器窗口进行定位(老IE不支持) |
| inherit | 规定从父元素继承 position 属性的值 |
外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距。 合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。


尽管看上去有些奇怪,但是外边距甚至可以与自身发生合并。

如果这个外边距遇到另一个元素的外边距,它还会发生合并:

只有普通文档流中块框的垂直外边距才会发生外边距合并。行内框、浮动框或绝对定位之间的外边距不会合并。