CSSでdivを特定のパーセントの高さに設定しようとしています
何パーセント?
高さのパーセンテージを設定するには、その親要素(*)に明示的な高さが必要です。高さをそのままにしておくと、これはかなり自明です。auto
と、ブロックはそのコンテンツの高さになります...しかし、コンテンツ自体が親のパーセンテージで表される高さを持っている場合は、少し作りましたキャッチ22.ブラウザーはあきらめ、コンテンツの高さだけを使用します。
したがって、divの親には明示的なheight
プロパティが必要です。その高さは必要に応じてパーセンテージにすることもできますが、問題は次のレベルに移動します。
divの高さをビューポートの高さのパーセンテージにしたい場合は、<html>
and を含むdivのすべての祖先<body>
がを持っている必要がheight: 100%
あるため、divまでの明示的なパーセンテージの高さのチェーンがあります。
(*:または、divが配置されている場合は、「包含ブロック」、これも配置される最も近い祖先です。)
または、すべての最新のブラウザーとIE> = 9は、ビューポートの高さ(vh
)とビューポートの幅(vw
)に関連する新しいCSSユニットをサポートしています。
div {
height:100vh;
}
詳細はこちらをご覧ください。
height
パーセント値を持つプロパティ:stackoverflow.com/a/31728799/3597276