1
Firefoxにパディングボトムが表示されないという問題があります。Firefox:オーバーフローした固定配置要素にパディングボトムが表示されない:フレックスコンテナがスクロールする
コンテナの表示プロパティにflex値がある場合、子要素のマージンボトムは無効です。 (表示:ブロックはOKです)
これはFirefoxでのみ発生します。他のブラウザでは、パディング - 先祖の下にマージン - 下が子孫に表示されます。
私に教えてください、なぜこれが起こっているのですか?私は仕様書を読みましたが、答えを見つけることができませんでした。
http://codepen.io/anon/pen/XdeOzy?editors=1100
HTML:
<div class="wrap">
<div class="modal">
<b>[BEGIN]</b> Lorem ipsum dolor sit ... <b>[END]</b>
</div>
</div>
はCSS:
* {
box-sizing: border-box;
}
.wrap {
position: fixed;
top: 0;
left: 0;
display: flex;
width: 100vw;
height: 100vh;
padding: 20px; /* padding-bottom is not displayed in FF */
overflow-y: scroll;
background: rgba(0, 0, 0, .6);
}
.modal {
width: 400px;
margin: auto;
/* in the FF it works only when .wrap element
has display property with block value, not flex */
/* margin-bottom: 20px; */
padding: 20px;
background: #fff;
}
**あなたが '表示する理由任意の理由がある:?曲げる;'ラッパーには、** –
私はただの垂直方向の位置合わせのために、このプロパティを使用しました子要素P.P.私は、問題を単純に別の要素を追加して解決し、パディングを割り当てることができます。私の質問はそれを行う方法ではない、私はそのような行動の理由を知りたい。 –
井戸:自動;子フレックスのオーバーフローを可視にすることができますが、オーバーフローするだけです。あなたがalign-itemsとjustify-contentをparentの代わりにparentに設定した場合、margin:auto;振る舞いは一貫していませんが、同じ振る舞いをすることが期待されるときは異なります。http://codepen.io/anon/pen/ONxdGj?editors=1100フレックスチャイルドはどうにかオーバーフローしていますが、まだフレックスベースのデフオルトどういうわけか:)あなたは副作用があり、私はFFが間違っているとは確信していません。子のフレックスはスクロールバーを表示するものになります –