【问题标题】:How Do You Anchor Multiple Child Elements to the Bottom of a Parent Element in a Responsive Design?如何在响应式设计中将多个子元素锚定到父元素的底部?
【发布时间】:2014-06-23 19:29:10
【问题描述】:

我有一个具有 Bootstrap 3 的 .row CSS 类的父元素。在这个元素中有两个子元素(每个都有一个 Bootstrap 列类),其中一个具有不同的高度,具体取决于填充它的数据。在我正在使用的设计中,该行中的元素需要锚定到父元素的底部。

关键(正如标题和引导程序的使用所暗示的)是这需要响应。因此,使用bottom: 0px; 绝对定位子元素不是一种选择。

这是 html 的当前结构:

<div class="row r4">
    <div class="col-md-2">
        <div class="bottom">
            <div data-bind="text: description()"></div>
            <span data-bind="text: metric()"></span>
        </div>
    </div>
    <div class="col-md-8">
        <div class="bottom">
            <div data-bind="foreach: keyLabels()">
                <div class="key-color">
                    <div data-bind="attr: {class: color + ' color-value'}"></div>
                    <div data-bind="text: label"></div>
                </div>
            </div>
        </div>
    </div>
</div>

我进行了一些研究,但没有找到一种可靠的方法来使用纯 HTML/CSS 解决方案来解决这个问题。

我可以想出一些相当直接(尽管很老套)的方法来用 JS 解决这个问题,但现在我想尽可能避免这种情况。

有什么想法吗?

【问题讨论】:

  • 您可以将您的示例发布为 jsfiddle,以便我们可以看到它实际呈现的效果吗?

标签: css twitter-bootstrap responsive-design twitter-bootstrap-3 grid-layout


【解决方案1】:

这是您的标记的简化版本,有助于更轻松地重现问题:

<div class="row">
    <div class="col-xs-2 pull-bottom"
         style="height:100px;background:blue">
    </div>
    <div class="col-xs-8 pull-bottom"
         style="height:50px;background:yellow">
    </div>
</div>

那么我们如何将每一列垂直对齐到底部呢?见vertical-align with bootstrap 3

.pull-bottom {
    display: inline-block;
    vertical-align: bottom;
    float: none;
}

Working Demo in jsFiddle

【讨论】:

  • 如果使用 col-md- 而不是 col-xs,则此解决方案没有响应。请参阅jsfiddle.net/klode/9szkemgq/2 任何建议如何使其响应?
猜你喜欢
  • 1970-01-01
  • 2010-11-30
  • 1970-01-01
  • 2019-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多