汽车在保证金中做了什么:0 auto?

automargin:0 auto;做了什么margin:0 auto;

我似乎无法理解什么auto 。 我知道它有时会使物体居中。 谢谢。

如果在已应用margin: 0 auto的对象上指定了一个width margin: 0 auto为,则该对象将居中放置在其父容器中。

指定auto作为第二个参数基本上告诉浏览器自动确定左右页边距本身,通过设置它们。 它保证左右边距将被设置为相同的大小。 第一个参数0表示顶部和底部边距都将被设置为0。

 margin-top:0; margin-bottom:0; margin-left:auto; margin-right:auto; 

因此,举个例子 ,如果父级是100px,子级是50px,那么auto属性将决定在margin-leftmargin-right之间共享50px的可用空间。

 var freeSpace = 100 - 50; var equalShare = freeSpace / 2; 

这会给:

 margin-left:25; margin-right:25; 

看看这个jsFiddle 。 您不必指定父宽度,只需指定子对象的宽度。

自动:浏览器设置边距。 这个结果取决于浏览器

保证金:0自动指定

 * top and bottom margins are 0 * right and left margins are auto 

从计算块级别的宽度和边界的CSS规范,正常stream程中的非replace元素 :

如果'margin-left'和'margin-right'都是'auto',他们使用的值是相等的。 这使元件相对于容纳块的边缘水平居中。

 margin:0 auto; 

0表示上下,左上表示auto 。 这意味着左右边距将根据元素的宽度和容器的宽度来自动调整边距。

一般来说,如果你想把任何元素放在中心位置,那么margin:auto就能完美地工作。 但它只适用于块元素。

 margin-top:0; margin-bottom:0; margin-left:auto; margin-right:auto; 

0表示上下,左上表示自动。 浏览器设置保证金。