レスポンシブにしたい3つのdivがあります。最大幅 990px の場合、3 列のレイアウトにしたいと考えています。最大幅 650px を超える場合、最初の 2 つの div を 30% ~ 70% に広げて全体の長さを埋め、3 番目の列を下に移動して全体の長さに広げたいと思います。
これまでのところ、Chrome では機能しますが、Firefox ではバグがあります。
重要なのは、div 間に空白をまったく入れられないことです。
<div class="columns">
<div class="left-nav-menu">Left Column</div>
<div class="center-content-area">Center Column</div>
<div class="right-column">Right Column</div>
</div>
@media screen and (max-width: 990px) {
div.columns {background-color:#360; display:table; width: 100%; padding: 0em;}
div.left-nav-menu {width: 30%; margin: 0; padding: 2em; background-color: #CCC;
display:table-cell;}
div.center-content-area {width: 40%; margin: 0; padding: 2em;
background-color: #C9F; display: table-cell;}
div.right-column {width: 30%; margin: 0; padding: 2em; background-color: #CCC;
display: table-cell;}
}
@media screen and (max-width: 650px) {
div.columns {background-color:#360; display:table; width: 100%; padding: 0em;}
div.left-nav-menu {width: 30%;margin: 0; padding: 2em; background-color: #CCC;
display: inline-table; }
div.center-content-area {width: 70%; margin: 0; padding: 2em;
background-color: #C9F; display: inline-table;}
div.right-column {width: auto; margin: 0; padding: 2em; background-color: #CCC;
display: block;}
}