为什么「margin:auto」可以让块级元素水平居中?

为什么「margin:auto」可以让块级元素水平居中?

CSS权威指南-chapter 7里面有说到:

> 正常流中的块级元素框的水平总和就等于父元素的width

> 在水平格式化的“7大属性”中,只有3个可以设置为auto: width, margin-left, margin-right;

因此, 只要我们设置了block element的width, 并且margin-leftauto; margin-right: auto; 就可以让block element水平居中。

但是, 对于垂直格式化是不行的。

如果我们把margin-top和margin-right都设置为auto的话,实际上他们的高度将是0。(设定就是这样吧- -),可以测试测试。

想要垂直居中也可以, margin-top: 25%; margin-bottom: 25%;

refrence: *css权威指南*