ハイ
IEでflexに問題があります。
#two要素にはflex: auto
、十分なコンテンツがない場合でも、コンテナを埋めるためにそれを展開することになっています。
ただし、これはChromeおよびFirefoxでのみ行われます。IEでは、単に機能しません。
はflex-grow
はIEでサポートされていませんか?
誰かがこれを体ではなく子供のdivで試している場合。高さを0に設定できます。 min-heightを持つ要素。
IEはflex-grow auto要素の親要素に任意の高さを必要としています。
したがって、次のようになります。
.flex-parent{
display: flex;
min-height: 300px;
height: 0;
}
.flex-child{
flex: 1 1 auto;
}
IEにはflex: 1 1 auto
が必要です
理解できないflex: 1
これは、min-height
で<body>
を使用して高さ全体を取得するために発生します。 Internet Explorerの場合、height
プロパティを使用する必要があります(100%
または100vh
を使用)。
達成しようとしていることは本当にわかりませんが、Flexboxレイアウトが機能する方法ではありません。要素の 'flex'プロパティを使用するには、 'を持つ親要素内にある必要があります。 display:flex 'プロパティ。
<style>
#flexContainer {
display: flex;
}
#item1 {
width: 50px;
background: #66CC33;
flex: 1;
}
#item2 {
width: 50px;
background: #0099FF;
flex: 5;
}
#item3 {
width: 50px;
background: #66CC33;
flex: 10;
}
</style>
<html>
<div id="flexContainer">
<div id="item1">1</div>
<div id="item2">2</div>
<div id="item3">3</div>
</div>
</html>
私が使用します -ms-flex: 1 1 auto;
IEはflexを完全にはサポートしていません。接頭辞を付ける必要があります。