html - 将 div 与垂直居中对齐右对齐

标签 html css twitter-bootstrap

这是我的代码:

<div class="row">
    <div class="col-md-12 table">
        <div class="middle">Title XPTO</div>
        <div class="middle">Display:</div>
        <select class="form-control">
            <option label="10" selected="selected" value="10">10</option>
            <option label="25" value="25">25</option>
            <option label="50" value="50">50</option>
        </select>
    </div>
</div>

CSS:

.table {
    display: table !important;
}
.middle {
    display: table-cell !important;
    vertical-align: middle;
}

演示: https://jsfiddle.net/jkf2L49e/

我想将文本“Display:”放在离select 元素最近的地方。并且选择必须尽可能正确(位置)。执行此操作并使其响应的最佳方法是什么?

最佳答案

您还应该制作 <select>也是表格布局的一部分,所以只需用另一个 <div> 包裹它.标记将是这样的:

<div class="col-md-12 table">
    <div class="left">Title XPTO</div>
    <div class="middle">Display:</div>
    <div class="right">
        <select class="form-control">
            <option label="10" selected="selected" value="10">10</option>
            <option label="25" value="25">25</option>
            <option label="50" value="50">50</option>
        </select>
    </div>
</div>

要将文本右对齐,您可以简单地使用 text-align:right在中间的单元格中。 CSS 将是这样的(在下面的评论中进行了调整)。

.table {
    display: table;
}
.table > div {
    display: table-cell;
    vertical-align: middle;
    white-space: nowrap;
}
.table .middle {
    text-align: right;
    width: 100%;
}
.table select {
    width: auto;
}

更新演示 - https://jsfiddle.net/jkf2L49e/4/

关于html - 将 div 与垂直居中对齐右对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30792229/

相关文章:

html - 包含输入输入时显示的动态生成列表的 Div

jquery - CSS 设计无法创建样式和 Logo

html - CSS/Bootstrap : How to stretch containers within cols full-height?

sharepoint - Sharepoint 2007 中的 <video> 标签

html - Bootstrap 响应式和选择框

html - ui 对话框中 JQuery 自动完成输入字段中无法解释的高度调整

html - 谷歌 polymer : how to properly put divs inside paper-material element?

html - Css 无法应用于子 div

css - 导航栏和超大屏幕之间的 Bootstrap 空白间隙。边距 css 不能解决问题

javascript - Bootstrap-select 与顶部选定和 jQuery 可排序集成