html
<div class="a">
<div class="b"></div>
</div>
当设置a
的min-height
为400px时,a
的默认高度为400px
,但是接着设置b
的高度为height:100%
时,a
的高度就变化了,或者b
的高度不生效
其实就是要完成一个效果就是b的默认高度等于a,当b的内容溢出默认高度时,增加a的高度:
例如:
<div class="a">
<div class="b">
<div class="c"></div>
<div class="c"></div>
<div class="c"></div>
<div class="c"></div>
<div class="c"></div>
</div>
</div>
c的高度为100px,这时候B和A的高度需要适应
额 你是想让父元素适应子元素的高度吗? 在父元素上设置height:auto 不就好了么?
你可以给父元素加绝对定位,然后子元素加相对定位,这样子元素的高度就会根据父元素的高度进行计算,变成你想要的那种效果
<div class="a">
<div class="b"></div>
</div>
<style type="text/css">
.a{width: 1000px;min-height: 400px;background: pink;position: relative;}
.b{height: 100%;width: 300px;background: black;position: absolute;}
</style>
是不是你哪里写错了,我测试了一下a完全可以自适应b的高度.
高度没有百分比
高度百分比的大小是相对其父级元素宽高的大小,如最外层元素设置的百分比是对应屏幕而言的。
测试了一下
建议b用
min-heihgt
和a不要加高度.即可,用height在dom树渲染时就固定了高度
.a{min-height:400px;}
.b{min-height:100%;}
要b做什么 a直接auto不就好了