ヘッダー、コンテンツ、フッターのセクションが縦に配置された単純な HTML レイアウトを作成しようとしています。
ヘッダーとフッターの両方の高さは、コンテンツによって決定され、柔軟であるべきです。
コンテンツ セクションの高さは残りの高さである必要があるため、レイアウト全体でウィンドウの高さ全体が使用されます。コンテンツ セクションはスクロール可能です。
したがって、順番に:
- ヘッダ。高さはコンテンツの高さに依存します。スクロールバーはありません。
- コンテンツ。高さは残りです。window_height - (header_height + footer_height)。必要に応じてスクロールバー (overflow: auto;)
- フッター。高さはコンテンツの高さに依存します。スクロールバーはありません。
静的なヘッダーとフッターの高さの例はたくさんありますが、コンテンツ ベースの高さを処理できるものは見つかりませんでした。
絶対/相対/固定の位置でプレーンなdivを試しました。いくつかの構成で、display: table/table-row/table-cell で div を試しました。私も実際に使ってみました。しかし、これらのどれも機能していないようです。これは多くの失敗した試みの 1 つです: http://jsbin.com/uveloj/15/edit
スクリプトを使用せずにこれを行うにはどうすればよいですか (可能な場合は常に JS に依存しないことを好みます)。