html - IE10+11 中 flexbox 容器中的垂直对齐(Bootstrap 3)元素

标签 html css twitter-bootstrap flexbox

当使用 flexbox 将两个 Bootstrap 列垂直居中时,我在 IE10+11 上遇到问题。

列具有动态内容,行的最小高度必须为 65 像素。但是,如果内容扩展为多行文本,则该行的高度应该能够增长——仍然保持列垂直对齐。因此,指定固定高度不是一种选择。

问题是在 IE10+11 中 flexbox 只适用于特定的高度 - 而不是最小高度。

我尝试使用 display table-cell、float: none 等,但它破坏了 Bootstrap 中的列偏移量。

有人知道这个问题的解决方法吗?

html:

<div class="row">
  <div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-3">Title - I can be any size</div>
  <div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-3">Optional sub title - I can be any size</div>
</div>

CSS:

.row {
  min-height: 65px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

JsFiddle here (包括供应商前缀。)

最佳答案

我们似乎可以通过将 .row 包装在具有另一个 flex 定义的元素中来解决最小高度错误 - 如下所示:

<div class="row-fix">
    <div class="row">
        <div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-3">Title - I can be any size</div>
        <div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-3">Optional sub title - I can be any size</div>
    </div>
</div>

将此添加到 css:

.row-fix {
     display: flex;
     flex-direction: row;
 }
.row {
    min-height: 65px;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

关于html - IE10+11 中 flexbox 容器中的垂直对齐(Bootstrap 3)元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41977878/

相关文章:

html - Bootstrap 响应式产品网格

html - 当溢出设置为自动时,不再出现垂直滚动条

css - Twitter Bootstrap : bottom align text next to image

javascript - 在回发 Bootstrap 选项卡后使当前选项卡处于事件状态

html - 如何做 HTML/CSS 表单助手/popover

html - Chrome 上的字体大小呈现不一致问题

jquery - 还有其他人在运行 jQuery 和 LESS 样式表时遇到此问题吗?

html - 没有标签的 "for"属性的自定义复选框(Bootstrap 4)

javascript - 图片在CSS中的位置

html - 如何制作此 iFrame 滚动