我必须显示2个相邻的框,两个框都具有动态内容(使用角度渲染)。 Container
的高度必须为Box1
。 Box2
的高度可能会因动态而有所不同,并且不应高于Box1
。如果更高,则应显示滚动条。
我从以下代码开始使用表:
<table id="Container">
<tr>
<td valign="top" id="Box1">
<dynamic rendered html code/>
<td>
<td> <td>
<td valign="top" style="position: relative; id="Box2">
<div style="position: absolute; top:0; bottom:0; overflow-x: hidden">
<dynamic rendered html code/>
</div>
<td>
</tr>
</table>
不幸的是,它在IE中不起作用,因为(如我在网络上阅读的) position 未为表格定义(不是HTML标准);
所以我决定切换到div:
<div id="Container">
<div style="display: inline-block; vertical-align:top" id="Box1">
<dynamic rendered html code/>
<div>
<div style="display: inline-block;"> <div>
<div style="display: inline-block; vertical-align:top" id="Box2">
<dynamic rendered html code/>
<div>
</div>
Box1
应该始终包装其内容。如果滚动溢出,则Box2
不应比Box1
高。
CSS可能吗?没有JQuery,也没有Javascript。
答案 0 :(得分:0)
我相信您希望#Box2
的高度等于#Box1
的高度。
无法在同一父级中对齐该高度。因此,建议您像下面这样用#Box2
包装#Box1
。
<div id="Box1">
<div id="Box2">
</div>
</div>
您可以将max-height: 100%;
设置为#Box2
,以使#Box2
的最大高度不大于#Box1
。
在文本溢出时,将overflow-x: auto;
添加到#Box2
可以自动显示滚动条。