2016-10-22 60 views
0

我尝试使用flexbox和sass实现网格。它在Chrome上工作得很完美,但我在Safari中遇到了一些问题,并且红色框“溢出”并且不会破坏到新线。Safari/Chrome - Flexbox网格

重要的一点,当Safari窗口小于其正在工作的分辨率屏幕时。

创建一个新的html文件来测试问题并用safari和chrome打开这个文件可能会更好。

Safari浏览器(水平溢出,我们必须滚动)

Safari

Chrome

<style> 
 
    .flex-parent { 
 
     display: flex; 
 
     display: -webkit-flex; 
 
     flex-direction: row; 
 
     -webkit-flex-direction: row; 
 
     flex-wrap: wrap; 
 
     -webkit-flex-wrap: wrap; 
 
     justify-content: flex-start; 
 
     -webkit-justify-content: flex-start; 
 
     margin-left: -14px; 
 
     margin-top: -14px; 
 
     margin-bottom: 14px; 
 
    } 
 
    .flex-parent .event_card { 
 
     flex: 1 0 345px; 
 
     -webkit-flex: 1 0 345px; 
 
     margin-left: 14px; 
 
     margin-top: 14px; 
 
     padding: 14px; 
 
     box-sizing: border-box; 
 
     height: 140px; 
 
     background: red; 
 
    } 
 
    @media (min-width: 690px) { 
 
     .flex-parent .event_card { 
 
     max-width: calc(50% - 14px); 
 
     } 
 
    } 
 
    @media (min-width: 1035px) { 
 
     .flex-parent .event_card { 
 
     max-width: calc(33.33333333% - 14px); 
 
     } 
 
    } 
 
    @media (min-width: 1035px) { 
 
     .flex-parent .event_card { 
 
     min-width: calc(33.33333333% - 14px); 
 
     } 
 
    } 
 

 
</style>
<html> 
 
    <body> 
 
    <div id="content"> 
 
     <div class="flex-parent feedify-item-body"> 
 
        
 
      <div class="event_card"> 
 
       <div class="wrapper Aligner"> 
 
        <div class="card__front"></div> 
 
       </div> 
 
      </div> 
 

 
      <div class="event_card"> 
 
       <div class="wrapper Aligner"> 
 
        <div class="card__front"></div> 
 
       </div> 
 
      </div> 
 

 
      <div class="event_card"> 
 
       <div class="wrapper Aligner"> 
 
        <div class="card__front"></div> 
 
       </div> 
 
      </div> 
 

 
      <div class="event_card"> 
 
       <div class="wrapper Aligner"> 
 
        <div class="card__front"></div> 
 
       </div> 
 
      </div> 
 

 
      <div class="event_card"> 
 
       <div class="wrapper Aligner"> 
 
        <div class="card__front"></div> 
 
       </div> 
 
      </div> 
 

 
      <div class="event_card"> 
 
       <div class="wrapper Aligner"> 
 
        <div class="card__front"></div> 
 
       </div> 
 
      </div> 
 

 
      <div class="event_card"> 
 
       <div class="wrapper Aligner"> 
 
        <div class="card__front"></div> 
 
       </div> 
 
      </div> 
 

 
     </div> 
 
    </div> 
 
    </body> 
 
    </html>

莫非你请告诉我什么是错误的,以及有什么可以解决的办法来帮助我?

谢谢

回答

0

的问题似乎与

flex: 1 0 345px; 
-webkit-flex: 1 0 345px; 

我改变了对

flex: 1 0 calc(33.33333333% - 14px); 
-webkit-flex: calc(33.33333333% - 14px);