margin-left:auto和margin-right:auto不在输入上工作

时间:2012-02-10 10:18:43

标签: html css html5

我有一个表单中的输入,我试图在中心对齐。通常margin-left:automargin-right: autodisplay: block未添加到CSS时无法响应。我已将display: block添加到我的CSS中,但仍然无法按照我的意愿显示。

我已经让JSFiddle更容易理解:http://jsfiddle.net/XnKDQ/97/

7 个答案:

答案 0 :(得分:66)

为了margin: 0 auto;工作,除display:block外,还需要指定width

答案 1 :(得分:5)

就我而言,我忘记了float: left。因此,请务必将float: none应用于输入字段。

您已经拥有display: blockmargin: 0 auto,您只需要设置宽度。

应该有效的示例:

input{
     width:50% !important;
     margin:0 auto !important;
     display:block !important;
     float:none !important;
}

如果这不起作用,请尝试将!important添加到值中,或确保您的样式不会被其他内容覆盖。

答案 2 :(得分:4)

我找到了适合你的解决方案

您应指定元素宽度

input {
  display: block;
  margin: 10px auto 10px auto;
  padding: 3px;
  width:60px;
}

答案 3 :(得分:0)

您希望三个表单一起在中心对齐吗?将它们包裹在一个div中,然后将div作为中心。

答案 4 :(得分:0)

除了指定width和display block之外,还要检查float属性是否设置为none。

答案 5 :(得分:0)

对于所有事物,你可以检查你的身体是否有参数位置。它可以设置为固定。

答案 6 :(得分:0)

您可以执行以下操作:

input {
  width: fit-content;
  margin: auto;
}