【问题标题】:Bootstrap 4 Internet Explorer missing column wrappingBootstrap 4 Internet Explorer 缺少列换行
【发布时间】:2018-01-25 00:32:10
【问题描述】:

根据标题,我使用的是 Bootstrap 4,即使在简单的行列配置上,我也可以重现 Internet Explorer 的问题:列换行不适用。

虽然在带有小屏幕的 chrome 中,所有元素都很好地适合视口,但在资源管理器中,它们会被修剪而不是像预期的那样包裹。

<div class="container root">
  <div class="row">
    <div class="col">
      <div class="row no-gutters">
        <div class="col-auto logo">
          <img src="https://www.gravatar.com/avatar?d=mm&s=60" alt="">
        </div>
        <div class="col title">
          Extralongword supermegagiga
        </div>
      </div>
    </div>
    <div class="col">
        <div class="row no-gutters">
          <div class="col">
            <select class="form-control-sm" name="" id="">
              <option value="">Please choose...</option>
            </select>
            <button class="btn btn-sm btn-primary">+</button>
          </div>
          <div class="col">
            <select class="form-control-sm" name="" id="">
              <option value="">Please choose...</option>
            </select>
            <button class="btn btn-sm btn-primary">+</button>
          </div>
        </div>
    </div>
  </div>
</div>

检查这个 Codepen 的问题很明显: https://codepen.io/stilllife00/pen/VyOMBX

这可能是带有 flexbox 的 Explorer 的错误行为,但我认为 bootstrap 应该涵盖这个跨浏览器问题。

【问题讨论】:

  • 您正在测试哪个版本的 IE?我在 chrome 和 IE11 中看起来是一样的。
  • @TidyDev 11.125.16299.0,差异出现在小屏幕上,当组件应该包裹而不是裁剪时

标签: twitter-bootstrap internet-explorer bootstrap-4 twitter-bootstrap-4


【解决方案1】:

您可以尝试将col 更改为col-sm

<div class="container root">
  <div class="row">
    <div class="col-sm"> <-- HERE 2nd Update
      <div class="row no-gutters">
        <div class="col-auto logo">
          <img src="https://www.gravatar.com/avatar?d=mm&s=60" alt="">
        </div>
        <div class="col title">
          Extralongword supermegagiga
        </div>
      </div>
    </div>
    <div class="col">
        <div class="row no-gutters">
          <div class="col-sm">
            <select class="form-control-sm" name="" id="">
              <option value="">Please choose...</option>
            </select>
            <button class="btn btn-sm btn-primary">+</button>
          </div>
          <div class="col-sm">
            <select class="form-control-sm" name="" id="">
              <option value="">Please choose...</option>
            </select>
            <button class="btn btn-sm btn-primary">+</button>
          </div>
        </div>
    </div>
  </div>
</div>

小提琴:https://codepen.io/anon/pen/dJEjpg

【讨论】:

  • 稍微好点,但不能解决问题。你可以在这里看到codepen.io/stilllife00/pen/rpgvrg标题在小屏幕上被截断
  • 当您将相同的 col-sm 类添加到您的标题时,它似乎消失了(请参阅更新)
  • 我不确定您指的是哪个更新。我试图将col-sm 放在.title div 中,但它仍然没有帮助。这里有一个比较:snag.gy/UHDver.jpg 此外,col-sm 只是基于媒体查询工作,我在这里调查的是 Bootstrap 方面是否存在关于资源管理器的实际错误。它应该像 Chrome 一样按照 flexbox 规范正确包装(给定适当的 CSS)。 col-sm 只是一种在某些视口尺寸上强制换行的方法
  • 不,我标记了第二次更新我的 html 代码,并提供了一个链接
  • 好的,我会接受答案,因为它会导致正确的换行。尽管我们只是通过媒体查询强制换行,而不是按规范使用 flex-wrap,但我仍然不是 100% 高兴.
猜你喜欢
  • 2017-01-13
  • 1970-01-01
  • 2014-01-04
  • 2019-07-20
  • 1970-01-01
  • 1970-01-01
  • 2020-07-06
  • 2017-09-16
  • 2012-04-05
相关资源
最近更新 更多