html - 如何使用 flexbox 模型水平居中 div

标签 html css twitter-bootstrap flexbox

我正在使用 Bootstrap 并且在 IE 中将框居中时遇到问题。 Chrome 按预期运行。

这是我的标记:

<div class="modal modal-flex" tabindex="-1">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      IE, why I have so much problems with you?
    </div>
  </div>
</div>

我的 modal-flex 类很简单(我删除了供应商特定的样式以简化示例):

.modal-flex {
  display: flex;
  justify-content: center;
  align-items: center;
}

在 IE 中我的框向右移动,在 Chrome 中成功居中。

即: enter image description here

Chrome enter image description here

这是我的 fiddle https://jsfiddle.net/vadimb/mj6ygckq/3/

最佳答案

当您使用框架时,它们有时会以一种并不总是正常工作的方式组合属性,在这种情况下,您添加了一个新标准,尤其是 Flexbox,这会给您带来非常不可预测的结果.

在这种情况下,媒体查询将自动边距设置为 modal-dialog,这是 IE 不喜欢的。

假设您想使用 flex 行方向,并水平和垂直对齐对话框,添加此 CSS 规则

@media (min-width: 768px) {
  .modal-dialog {
    margin: 0;
  }
}

Updated fiddle

关于html - 如何使用 flexbox 模型水平居中 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44452700/

相关文章:

html - 将图像居中放置在旋转 45 度的正方形上(或在菱形背景上)css

javascript - 如何将图标和输入类型文本框分开并将div移动到右 Angular ?

css - 使用 CSS 使用自定义字体?

html - 在响应页面上对齐自定义的 css 按钮

javascript - 为什么我的 bootstrap Accordion 图标在展开/折叠时没有改变?

html - 为什么 Jumbotron 看起来太大而不适合 window ?

html - 向部分添加边距会破坏三列设计

javascript - 获取 DOM 元素的性能差异

jquery - 在 jqGrid 中过滤并将背景颜色应用于 tr

javascript - 使用 html 和 css 打印页面时,如何以最小高度对齐页脚和页眉?