【发布时间】:2014-08-12 04:15:41
【问题描述】:
我有这个 html:
<div class="col-xs-12">
<div class="row">
<div class="col-xs-8">
<h2>Some big header</h2>
</div>
<div class="col-xs-4 select">
<select class="form-control">
<option>TMP</option>
</select>
</div>
</div>
<div class="row">some more text</div>
</div>
我得到了这个结果:
标签h1 上有margin 属性,所以h1 上面有一些空格。 select上方没有这个空间,所以这个元素没有居中。
“你试过什么?”
我尝试过糟糕而可怕的方法。我知道它可以用来使 div 居中。但不是在这种情况下...我已将line-height 和height 属性添加到选择中:
.select {
height: 80px;
line-height: 80px;
}
.form-control {
display: table-cell;
}
是的,它起作用了,但它根本不是相对的。如果在左栏中会有h2 文本,而不是h1 怎么办?
jsFiddle example of "what you tried?"
另外,“你尝试过什么?” 2:我尝试使用form-horizontal 类。看这个:
还有代码:
<div class="col-xs-12 form-horizontal">
<div class="row form-group">
<div class="col-xs-8">
<h2 class="control-label">Some big header</h2>
</div>
<div class="col-xs-4 ">
<select class="form-control">
<option>TMP</option>
</select>
</div>
</div>
</div>
此外,左列中的文本是右对齐的(作为表单标签,很明显)。我不想要这个。
jsFiddle example of "what you tried?" 2
所以问题是:如何使两个元素垂直居中?非常喜欢使用引导类和方法。不要建议您指定 div 的高度、边距或填充的方法:它根本不是相对的。
【问题讨论】:
标签: html css twitter-bootstrap-3 vertical-alignment centering