我知道设置边际:0自动;用于使元素居中(左右)。然而,我知道元素和它的父元素必须满足自动裕度工作的某些标准,而且我似乎从来没有得到正确的魔法。
所以我的问题很简单:为了获得margin: 0 auto;左右中间的孩子?
我知道设置边际:0自动;用于使元素居中(左右)。然而,我知道元素和它的父元素必须满足自动裕度工作的某些标准,而且我似乎从来没有得到正确的魔法。
所以我的问题很简单:为了获得margin: 0 auto;左右中间的孩子?
当前回答
以下是我的建议:
First:
1. Add display: block or table
2. Add position: relative
3. Add width:(percentage also works fine)
Second:
if above trick not works then you have to add float:none;
其他回答
我能想到的是:
元素必须是块级的,例如display: block或display: table 元素不能浮动 元素不能有固定或绝对位置1
在别人的头脑中:
元素的宽度必须不是auto2
注意,对于居中的元素,所有这些条件都必须为真才能工作。
有一个例外:如果你的固定或绝对定位元素已经离开:0;右:0,它将以汽车边际为中心。
从技术上讲,margin: 0 auto确实适用于auto width,但auto width优先于auto margin,因此auto margin被归零,使其看起来好像“不起作用”。
CSS的完整规则:
(显示:块和宽度不是自动的)或显示:表 浮:没有 位置:相对或位置:静态
OR
带有display: flex的父元素
如果你的父元素没有固定的宽度,让你的父元素带有display: flex对我来说很有效。
在我的猫的头顶上,确保你试图居中的div没有设置为宽度:100%。
如果是,那么在子div上设置的规则才是重要的。
在我看来,它需要一个宽度。你需要指定你正在居中的容器的宽度(不是父宽度)。