次のように、4 つの div を含むコンテナー (幅は不明) があります。
| Div1 | Div2 ............... | .............. Div3 | Div4 |
左端と右端の div (Div1/Div4) は固定幅です。それは簡単な部分です。
Div2/Div3 の幅は不明です。コンテンツによっては、一方が他方よりもはるかに広くなる可能性があるため、それらに固定幅を設定することは避けたいと思います (したがって、たとえば、それぞれに 50% を使用させることはできません)。利用可能なスペース)
Div2/Div3 の幅がブラウザによって自動的に計算されるようにしたいのですが、残りのスペースが残っている場合は、残りのスペースを埋めるためにストレッチする必要があります (残りのスペースが Div2/Div3 間でどのように分割されているかは問題ではありません)。
私が今これに取り組んでいる方法は次のとおりです。
- Div1 を左にフロート (または絶対配置)
- Div4 を右にフロート (または絶対配置)
- Div2 には、Div1 の幅と等しいマージン左があります (既知)。
- Div3 には Div4 の幅と等しい右マージンがあります (既知)
私の質問は、残りの利用可能な幅を埋めるために Div2 と Div3 を伸ばすにはどうすればよいですか? 1 つのオプションは display: table を使用することであり、別の可能性はflex-boxであると思います。代替手段はありますか?
更新:わかりやすくするために編集しました。
更新 2: Div2 と Div3 がそれぞれ使用可能なスペースの 50% を取得する必要があるとは想定できないことに注意してください。これは質問で明示的に述べられていますが、どういうわけか、この仮定に基づいて回答を得続けています。