微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

html – align-items,align-self不能在IE11上运行

我有一个 simple plunker here.
.container {
  display:flex;
  flex-flow: row Nowrap;
  justify-content: space-between;
  align-items: center;
  min-height: 4em;
}

.nav {      
  flex: 0 0 4em;
  height: 1em;
}

.logo {
  flex: 1 0 auto; 
  align-self: stretch;
}

这是我在Chrome 49中想要的方式:

但不是在IE11中:

我已经检查过IE不处于兼容模式 – 它不是 – 它处于IE11模式.

这里发生了什么?

解决方法

这是IE11中的一个错误.

IE11中的flex项目无法识别Flex容器上的min-height属性.

如果切换到高度:4em,您将看到您的布局有效.

一个简单的解决方法是使.container成为一个flex项.

换句话说,将其添加到您的代码中:

body {
    display: flex;
}

.container {
    width: 100%; /* or flex: 1 */
}

无论出于何种原因,通过使Flex容器也成为弹性项目,子元素遵循最小高度规则.

更多细节:Flexbugs: min-height on a flex container won’t apply to its flex items

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐