2015-10-15 79 views
2

由於某種原因,我的Flexbox在Safari中無法正常工作。Flexbox未在Safari瀏覽器中工作(帶前綴)

它在iOS中的Chrome中也不適用,但是我的Mac或Android設備上的Chrome可以正常工作。以下是我的代碼。

div.row { 
padding: 0; 
display: -webkit-box; 
display: -ms-flexbox; 
display: -webkit-flex; 
display: flex; 
flex-wrap: wrap; 
-webkit-flex-wrap: wrap; 
-ms-flex-wrap: wrap; 
-webkit-box-pack: center; 
-ms-flex-pack: center; 
justify-content: center; 
-webkit-justify-content: center; 
-ms-justify-content: center; 
} 
div.inner { 
-webkit-box-flex: 1; 
-webkit-flex: 1; 
-ms-flex: 1; 
flex: 1; 
text-align: center; 
padding: 0 10px; 
padding-top: 50px; 
min-width: 200px; 
} 

我做了一個JSFiddle http://jsfiddle.net/mynv6k4q/來顯示。

當視口變小時,底部的塊應伸出,頂部的兩個塊需要彼此並排,直到它們的寬度小於200px。這在Chrome中運行良好,但Safari不起作用,即使它帶有前綴。

什麼可能是錯的?

+0

哪個版本的Safari和哪個操作系統? –

回答

3

這是通過將「flex:1」更改爲「flex:1 0 200px」來解決的。顯然,在Safari中,最小寬度與Flexbox結合使用並不真正。

+0

這篇文章真的幫了我。我能夠使用flex屬性來獲取我的DOM元素,以便在媒體查詢時使用您的建議正確顯示和/或將flex屬性從'flex:1;'更改爲'flex:1 1 auto;'。我發現默認的'flex'屬性是'flex:0 1 auto;',所以我爲麻煩的元素拋出了默認值,並且它們正常工作。 – m00saca

相關問題