ボタンが内部にあるこの単純なdivがあります 。 _justify-content: center;
_はFirefoxおよびChromeを使用して正常に動作しますが、IE 11:では動作しません:
_#div {
height: 200px;
width: 50px;
border: 1px solid black;
display: flex;
flex: 0 0 auto;
align-items: center;
justify-content: center;
}
#button {
height: 50px;
width: 200px;
min-width: 200px;
border: 1px solid black;
background-color: red;
}
_
_<div id="div">
<button id="button">HELLO</button>
</div>
_
私の目標は、transform
をrotate(90deg)
またはrotate(270deg)
とともに使用すると、 ボタンがdivに収まる :
_#div {
height: 200px;
width: 50px;
border: 1px solid black;
display: flex;
flex: 0 0 auto;
align-items: center;
justify-content: center;
}
#button {
height: 50px;
width: 200px;
min-width: 200px;
border: 1px solid black;
background-color: red;
transform: rotate(90deg);
}
_
_<div id="div">
<button id="button">HELLO</button>
</div>
_
height
とwidth
のdiv
とbutton
は常に同じですが、カスタマイズ可能です。
可能な限り、要素をラップしないことを好みます。
IE11では、親にflex-direction: column
が必要です。
この例では、ボタンが回転しています。
#div {
height: 200px;
width: 50px;
border: 1px solid black;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column
}
#button {
height: 50px;
width: 200px;
min-width: 200px;
border: 1px solid black;
background-color: red;
transform: rotate(90deg);
}
<div id="div">
<button id="button">HELLO</button>
</div>
私の場合、フレックスコンテナの高さを100%にする必要がありました。その後、justify-contentは問題なく機能しました。
また、一部のコンテンツが水平方向にオーバーフローするのを修正するために、(最初のレベルの)子供の最大幅を100%にする必要がありました。