2015-09-21 25 views
24

Safari'yi varsayılan bir esnek kapsayıcıda esnek öğeleri üst üste getirmemek için doğru CSS nedir?Safari'de CSS flexbox öğelerini örtüşüyor

Safari, çok sayıda içeriği olan öğeleri bükmek için çok fazla genişlikli görünüyor.

Safari: (Mac OS X 10.10.5 Yosemite üzerinde v8.0.8)
flex-items-safari.png

esnek ürün Chrome ve Firefox'ta ince gösterir.

Krom:
enter image description here


CSS:

main { 
    display: flex; 
    border: 3px solid silver; 
    } 
main >div { 
    background-color: plum; 
    margin: 10px; 
    } 


HTML:

koduyla 10

Fiddle:
http://jsfiddle.net/LL05grus/6

+0

Bu sorun şimdi giderilmiştir. ** macOS 10.12 Sierra ** 'da ** Safari 10.0 ** ile test edilmiştir. –

cevap

35

elemanı küçülmektedir. Daraltma öğesi üzerinde flex-shrink özelliğini 0 olarak ayarlamanız gerekir.

main >div:first-child { 
    -webkit-flex: 0; 
    flex-shrink: 0; 
} 
+3

Bu gerçekten yardımcı oldu! Bununla birlikte, yanımda sorunu çözmek için 0 0 otomatik flex ile gitmek zorunda kaldı. – Gabin

+0

Aynı konu vardı, esnek öğelerden biri safari mobil yeterli yer almadı. Bu benim için çözüyor gibi görünüyor. Teşekkürler – Springrbua

+6

Ayrıca "küçültmek için: 0;" öğesini küçülttüğünden en küçük boyutundan daha küçük olmasını da ekleyebilirsiniz. – Max

0

Ayrıca, esnek kutu yönünün iPad'deki sütun çakışan öğelere dönüştüğü benzer bir sorun da vardı. Sorun, alt öğeye uygulanan flex: 0 1 0; özelliğiyle ilgilidir. Taban değerini otomatik verin. flex: 0 1 auto;

.parent{ 
    display: flex; 
    flex-direction: column; 
} 
.parent .child{ 
    flex: 0 1 auto; 
} 
İlgili konular