1

このフィドルをご覧ください。

これは、より複雑なフォームの非常に唖然としたバージョンです。では.dojoxAlertBar、プログラミング上の理由から、高さは100%に設定されています。#registerform高さを設定数として設定するまでは、すべて問題ありません。

/*    height:117px;  */

これがないと、メッセージの高さは「必要なだけ大きく」なります。ただし、CSSで117pxの高さのコメントを解除すると、の高さがに.dojoAlertBox等しくなり#registerFormます。

誰かがそれがなぜであるか説明できますか?私はCSSで「高さ」がどのように機能するかを誤解し続けています。その「100%」は実際にはどういう意味ですか?「含む要素の100%」を意味する場合、親に高さが指定されていないのに、なぜ「大きい」に設定されないのですか?

実際、固定/絶対要素と相対/静的要素の高さの計算方法の簡単な表があれば、それも素晴らしいことです。

4

1 に答える 1

1

これがないと、メッセージの高さは「必要なだけ大きく」なります。

要素()にパーセンテージの高さを与えるには.dojoAlertBar、その親要素(#registerForm)に明示的な高さが必要です。あなたの例で.registerFormは、高さがautoであるため、ブロックはそのコンテンツの高さを取ります。

ただし、これをコメント解除すると、コメントボックスが#registerFormと同じ大きさになります...その「100%」は実際にはどういう意味ですか?

100%の高さは、要素の高さが親の100%になることを意味します。したがって、親divには明示的なheightプロパティが必要です。117px#registerFormの高さを指定する.dojoAlertBarと、その高さの100%、つまり117pxになります。

于 2012-08-09T02:11:21.357 に答える