ホームページ > ウェブフロントエンド > CSSチュートリアル > 親要素に `min-height` しかない場合、子要素に対して `height: 100%` が機能しないのはなぜですか?

親要素に `min-height` しかない場合、子要素に対して `height: 100%` が機能しないのはなぜですか?

Susan Sarandon
リリース: 2024-12-26 09:13:15
オリジナル
487 人が閲覧しました

Why Doesn't `height: 100%` Work on a Child Element When the Parent Only Has `min-height`?

親に min-height/max-height しかない場合、子の高さが 100% であるにもかかわらず失敗する理由

指定された HTML スニペットでは、min-height を持つ親コンテナ要素: 300px で、明示的な高さの値がない場合、子要素の高さ: 100% は失敗します。

動作

CSS 仕様によると:

「高さのパーセンテージを指定します。パーセンテージは、生成されたボックスの包含ブロックの高さに関して計算されます。包含ブロックの高さが指定されていない場合、 明示的に指定 (つまり、コンテンツの高さに依存します)、この要素は絶対的に配置されていないため、値は次のように計算されます。 'auto.'"

提供されたシナリオでは、コンテナ要素の高さは明示的に定義されていません。代わりに、その内容と最小高さの値に基づいて決定されます。その結果、子要素の高さ: 100% を正確に計算できません。

明示的な高さの要求

コンテナに高さの値が設定されている場合、たとえ 1px であっても、明示的に高さの値が設定されます。含まれるブロックの高さを定義します。これにより、子要素の高さ: 100% が正しく計算されて適用され、明示的に高さを設定しなくてもコンテナ全体が満たされます。

代替アプローチ

子要素が満たされることが望ましい動作の場合親の高さに関係なく親要素全体を表示するには、次のような CSS フレックスボックスを使用する方法もあります。

.container {
  display: flex;
  flex-direction: column;
  height: 100vh;
}

.child {
  height: 100%;
}
ログイン後にコピー

以上が親要素に `min-height` しかない場合、子要素に対して `height: 100%` が機能しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート