2012-06-26 116 views
0

我有一个div(文章)有两个孩子(标题和#content_outer)。标题有一个正确的高度,并且我希望#content_outer有一个高度(没有给出具体的数字,例如:200px),以便标题高度+ #content_outer高度=文章高度。第二个孩子的div高度填写父母的高度

这里是一个小提琴:http://jsfiddle.net/fyNX4/

(在拨弄#content_outer不应超过在底部文章DIV)

我想,解决方案仅仅是使用CSS。

非常感谢。

编辑:

更具体地讲,这是我所希望的解决方案:http://jsfiddle.net/fyNX4/5/

我给#content_outer - >高度:240像素;

但是我想给一个%或其他解决方案的高度,如果标题有更多的文本(并有更多的高度),可以适用。 (http://jsfiddle.net/fyNX4/8/

回答

1

http://jsfiddle.net/fyNX4/9/

我不得不通过添加一些不必要的标记来修改您的结构:

table: table-row:  table-cell:  cell's content: 
article header   span 
article div#content-row div#content-cell div#content: overflow:auto; 
  • table-row s为必要的,因为他们是订购表格单元格的唯一途径垂直
  • table-cell s为必要的,因为table-row■不要接受填充或高度。因为table-cell小号忽略overflow
+0

非常感谢。很好的答案' – Alvaro

+1

“当然,”它不会与IE 6/7一起使用,所以如果有必要,你必须找出一些替代方案。 – biziclop

+2

来自用户Stefan的评论:“此解决方案目前仅适用于Google Chrome浏览器,而不适用于当前版本的Internet Explorer或Firefox。内容div不会滚动,但适合其内部文本高度并与外部div相重叠“。 – biziclop

0

你想是这样的:

这里是更新的小提琴:HTTP://jsfiddle.net/fyNX4/6/

#main { width: 300px; height:300px; background:Khaki; overflow:auto;} 
#content_outer { background: GoldenRod; height:100%; } 
+0

没有,#main应具有给定的高度

  • 内部包裹格是必要的:300像素;并且应该在#content_outer – Alvaro

  • +0

    中出现滚动添加溢出:自动到#main – SVS

    +0

    请参阅已编辑的问题。谢谢! – Alvaro

    相关问题