IE 6+、FF 2+、および Safari の Quirks モードと Standards モードの両方で動作する必要がある、再利用可能な ASP.net サーバー コントロールを開発しています。
コントロールは、高さと幅の 2 つのユーザー定義可能なプロパティを公開します。これらの属性は両方とも、パーセンテージまたはピクセル値として定義できます。
コントロール内には、ナビゲーション バーとコントロール コンテンツを含む 2 つの列 Div があります。コンテンツがコンテナーよりも大きい場合、オーバーフロー スタイルを利用するには、列を Div にする必要があります。以下のプロトタイプ コードの例を参照してください。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<div style="height: 100%; width:400px; background-color: Green; ">
<div style="height: 100%; width: 25%; background-color: Red; float:left; overflow:auto;">
LongString:<br />Stuffsdfsfdsdfsfsdfdfsdfsdfsdfsdfsdxgsdfgsdfgsdgiusdfgiudfgifdgu
</div>
<div style="height: 100%; width: 75%; background-color: Pink; float:right;">
Stuff
<br />
More stuff
<br />
And some more
</div>
<div style="clear:both;"></div>
</div>
</body>
</html>
私が遭遇する問題は、パーセントベースの高さを使用する場合の標準モードで、期待どおりの div がそのコンテンツと同じ大きさしかレンダリングされないことです。この問題を解決するには、JavaScript を使用するしかないようです。
これにより、コントロールが AJAX を使用して非同期に再レンダリングでき、高さが同期しなくなるという問題が発生します。
私が達成しようとしていることは不可能ですか、それとも間違った場所を探していますか?