css,DIV框内块元素增加,这个DIV的框高也随着增加。

css,DIV框内块元素增加,这个DIV的框高(height)也随着增加。这个怎么写?

#big{width:100px; height:300px; background:red;}
#sa{width:100px; height:280px; background:green;}

<div id="big">
<div id="sa">1</div>

<div id="sa">2</div>

<div id="sa">3</div>

</div>

  你好!你是否说的是big样式里的高度根据sa样式中所涉及的内容个数的高度相匹配,是这样的吧。那这个就很容易了,我看了一下你sa样式,没有涉及到浮动float的写入,所以这样你就可以很放心的将其big样式中的height:300px去掉,因为你存在height:300px的话,那你这个DIV高度就被限制住了,无法进行匹配了,只要你去掉高度,就可以根据里层div的多少而增加适当高度了。
  如果你还是不放心,考虑到兼容性的问题的话,那你可以将big里的样式加入height:auto; overflow:auto,完整写成:
  #big{width:100px; height:auto; overflow:auto; background:red;}

  如果你还考虑如果我在sa样式中加入float怎么办,那没有关系,因为你已经在big中加入oveflow:auto的值了,这个可以适应高度的。

  希望我的回答能令你满意!
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-05
保持纵横比不变,高度自动适应 参照这样的写法

<style type="text/css">
img {
max-width: 200px;
width:expression(this.width > 200 ? "200px" : (this.width+"px"));
}
</style>
<img src="http://gg.blueidea.com/2006/gongyi/banner.jpg"/>
第2个回答  2012-12-05
#big中不定义高度,或定义最小高度,如
#big{width:100px; background:red;}

#big{width:100px; min-height:300px; background:red;}
第3个回答  2012-12-05
你把“#big”里面的height去掉就可以了。以后写代码的时候要想高度自动,就不要定义高度,如果宽度没定义,会以父元素的宽度为最大宽度,如果里面的元素浮动,此时就要“浮动闭合”。
第4个回答  2012-12-05
#big{width:100px; background:red;}
去掉height
第5个回答  2012-12-05
这个div不限定高度,就好了
相似回答