如何将此表格对齐?我试过了,margin-left:auto;,margin:50px ;, margin:0 auto 0 auto;和其他几个代码似乎没有任何作用。我希望它能使所有内容都居中对齐,如果我想添加其他项目,它们也会居中。
这是jsfiddle:http://jsfiddle.net/ffKKN/1/
这是css:
.radio div[type='radio'] {
background: transparent;
border:0px solid #dcdcdc;
border-radius:10px;
padding:0px;
float:left;
margin-left: 10px;
cursor:pointer;
}
.radio div.active {
box-shadow:0 0 2px 0px transparent inset;
}
.tablebuttons img {
width: 60px;
height: 55px;
border: 0px solid #666;
background: #fff;
display:block;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
}
.question {
margin-left: auto;
display: none;
clear: both;
}
.question:nth-child(1) {
display:block;
}
#linkDiv {
margin: 0;
}
.clear {
clear: both;
}
答案 0 :(得分:6)
问题是表单显示block
,并扩展到其容器的100%宽度。您可以将显示切换到inline-block
,然后根据表单的子项进行传播。
无需固定宽度。
body {
text-align: center;
}
#quiz {
overflow: hidden;
display: inline-block;
}
答案 1 :(得分:3)
设置宽度,然后使用margin:0px auto;
#quiz {
width: 320px;
margin: 0px auto;
}
此外,如果您希望文本在容器中居中,请使用
body {
text-align: center;
}
答案 2 :(得分:1)
在你的CSS中加上这一行:
#quiz { margin:0 auto; width:350px; }
答案 3 :(得分:1)
如果您将用于代替单选按钮的<div class="iphone3gscarrier">
更改为<span>
标记,请使用以下css:
body {
text-align: center;
}
他们现在居中。您可以根据需要添加任意数量的标签,一切都将保持居中。
答案 4 :(得分:1)
如果您可以使用flexbox布局,这是使元素居中而不依赖于表格,文本对齐或固定宽度的唯一方法。
<form>
<label>Hello <input /> </label>
</form>
form {
display: inline block;
/* flexbox, por favor */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-pack: center;
-webkit-box-align: center;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-pack: center;
-moz-box-align: center;
display: box;
box-orient: horizontal;
box-pack: center;
box-align: center;
}
如果您必须支持旧浏览器,则可以对宽度http://jsfiddle.net/tuu4y/4/进行硬编码
form {
width: 300px;
margin: 5px auto;
}
如果您无法对宽度进行硬编码,则可以使用三种技巧中的任何一种,有些不会验证,有些则会被避开。它们都需要制作inline-block
如果您不希望文本居中对齐,则必须将text-align:left
放在表单上http://jsfiddle.net/tuu4y/2/
body {
text-align: center;
}
form {
display: inline-block;
text-align: left;
}
<form align="center">...</form>
,不验证http://jsfiddle.net/tuu4y/1/
<form align="center">
<label>Hello <input /> </label>
</form>