CSS3 - Flex包装不适用于IOS 10.1.1 Safari和Chrome

And*_*i F 4 css3 ios flexbox

我正在尝试使用flex wrap和min-width:50%来动态网格布局,其中单个单元占据所有宽度.问题是它在iOS 10.1.1(iPhone 5c)Safari和Chrome中无法正常工作 - 显示器不是网格状,而是水平布局.在桌面Chrome(Ubuntu)和Android Chrome工作正常.

Jsfiddle演示:https://jsfiddle.net/9dscc1Lq/

码:

<style>

body {
    width: 300px;
}

.tabs {
    width: 100%;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex: 0 0 auto;
    -webkit-flex: 0 0 auto;
    box-sizing: border-box;
    flex-flow: row wrap;
    -webkit-flex-flow: row wrap;
}

.tab {
    border: 1px solid #3A3A3A;
    color: #929292;
    min-width: 50%;
    box-sizing: border-box;
    flex: 1 1 0;
    -webkit-flex: 1 1 0;
    text-align: center;
}

</style>

<div class="tabs">
    <div class="gwt-HTML tab">1</div>
    <div class="gwt-HTML tab">2</div>
    <div class="gwt-HTML tab">3</div>
    <div class="gwt-HTML tab">4</div>
    <div class="gwt-HTML tab">5</div>
</div>
Run Code Online (Sandbox Code Playgroud)

预期布局(正确):

在此输入图像描述

iOS行为(不正确): 在此输入图像描述

请指教!

LGS*_*Son 8

min-width在iOS上无法正常工作,请使用flex-basis这样的方法flex: 1 1 50%;

Src:https://bugs.webkit.org/show_bug.cgi? id = 136041

此外,使用前缀属性时,应始终将它们放在未加前缀的版本之前.

.tabs {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  box-sizing: border-box;
}
.tab {
  border: 1px solid #3A3A3A;
  color: #929292;
  box-sizing: border-box;
  -webkit-flex: 1 1 50%;
  flex: 1 1 50%;
  text-align: center;
}
Run Code Online (Sandbox Code Playgroud)
<div class="tabs">
  <div class="gwt-HTML tab">1</div>
  <div class="gwt-HTML tab">2</div>
  <div class="gwt-HTML tab">3</div>
  <div class="gwt-HTML tab">4</div>
  <div class="gwt-HTML tab">5</div>
</div>
Run Code Online (Sandbox Code Playgroud)