html - IE 中的 Flexbox 无法正确设置元素宽度

标签 html css internet-explorer flexbox

我正在尝试使用 flexbox 在 div 中适本地分隔一些元素。

<div class="container">
    <ul class="action-box">
        <li class="long-item">Some cool info That needs to be on 2 lines</li>
        <li><a>Do a thing</a></li>
        <li><a>Do a different thing</a></li>
    </ul>
    <div>
      <a>
        Do something different
      </a>
    </div>
</div>

我试图让所有元素的大小相同。

我尝试设置 flex-basis,它在 chrome 中有效,但在 IE 中严重崩溃。

https://jsfiddle.net/w71t2247/7/

我还尝试在长元素上设置 max-width,这在 IE 中有效,但在 chrome 中偏离中心。

https://jsfiddle.net/w71t2247/8/

我不确定如何处理这个问题。我可以通过浏览器破解它,但我觉得有一种更简洁的方法。

最佳答案

IE 有很多关于 flexbox 的渲染问题。

在这种情况下,flex-basis: 100% 似乎是问题所在。

相反,请使用 width: 100%

li {
  /* flex-basis: 100%; */
  width: 100%; /* new */
}

https://jsfiddle.net/w71t2247/12/

关于html - IE 中的 Flexbox 无法正确设置元素宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46493691/

相关文章:

php - 图像未显示在使用 dompdf 的 PDF 文件中

javascript - 如何给没有固定大小的 block 添加图片放大效果?

html - CSS radio 选中的标签唯一颜色

css - 在跨浏览器的输入文本中对齐文本

css - 响应式设计 Bootstrap

html - IE8 的 CSS 定位 - 不支持表达式

internet-explorer - Firefox 和 IE9 在 Windows 上渲染字体不正确

javascript - 为 Polymer 自定义元素使用 native 节点名称?

css - </p :panel> 内容的水平居中对齐问题

javascript - knockout 不评估 IE7 中的表达式