私はこれが古い質問であることを認識していますが、私はあなたが今使用しているはずの答えを泡立たせたいと思いました:flexbox。質問から元のデモがいなくなって久しいですが、マークアップは、この(courtesy of the Wayback Machine)であった:フレキシボックスを使用して高さを均等にするためには
<div id="one">I am 150px high</div>
<div id="two">I am 200px high</div>
<div id="three">I am 120px high</div>
<div id="four">I am 300px high</div>
、あなたは彼らの周りにラップされたコンテナを持っている必要があります:
<div class="container container--equal-children">
<!-- those four divs -->
</div>
display: flex
及び「ストレッチ」にalign-items
を設定することが所望の効果を与えることを設定:
.container--equal-children {
display: flex;
align-items: stretch;
}
ことだたらスペースの1/4を塗りつぶすことができます。
.container--equal-children #one,
.container--equal-children #two,
.container--equal-children #three,
.container--equal-children #four {
flex: 0 1 25%;
}
これらはすべて自動的に同じ高さになります。
a CodePen that lets you toggle the flexbox rules on and offをまとめました。トグル機能にはJSが必要です。デザインビヘイビアを示すために、私が追加した(提示されている)スタイルルールもいくつかあります。
同じ高さでレンダリングされたさまざまなCSS高さのプロパティを持つボックスをCSSで作成したいですか?なぜ、彼らに同じ高さを与えないのですか? –
ボックスには、あらかじめわかっていないさまざまな量のコンテンツがあります。彼はコンテンツにかかわらず、すべての人が自動的に最大のものと同じ大きさになることを望んでいます。 – cpm
下記の私の答えに対するコメントで指摘されているように、現在のCSS標準を使用してこれが可能になりました。私の答えが依然として受け入れられるべきかどうかを検討したいかもしれません。 –