
css中,自适应高度 margin-bottom很大的正值。padding-top很大的负值,想问下,这是什么原理
#test{overflow:hidden;zoom:1;}.left{width:200px;margin-bottom:-3000px;padding-bottom:...
#test{overflow:hidden; zoom:1;}.left{width:200px; margin-bottom:-3000px; padding-bottom:3000px; background:#cad5eb; float:left;}.right{width:400px; margin-bottom:-3000px; padding-bottom:3000px; background:#f0f3f9; float:right;}.center{height:300px; margin:0 410px 0 210px; background:#ffe6b8;}HTML代码:<divid="test"><divclass="left">左边,无高度属性,自适应于最高一栏的高度</div><divclass="right">右边,无高度属性,自适应于最高一栏的高度</div><divclass="center">中间,高度300像素,左右两栏的高度与之自适应</div>
展开
2个回答
展开全部
你把#test的overflow改成scroll你就能看懂他的原理了。
这不是自适应的高度,只是利用了overflow:hidden来隐藏两边div的多余部分。他给左右两个div分别设置了一个3000像素高的空白占位高度,把整个div往上挤了3000像素,然后又通过负的margin把div往下挪3000像素。当中间的div高度到了3000以上的时候(准确的说是比两边div内部除了padding之外的高度多3000以上),左右两边的div高度可能就不够了,会比中间矮。
真正的自适应要用javascript。
这不是自适应的高度,只是利用了overflow:hidden来隐藏两边div的多余部分。他给左右两个div分别设置了一个3000像素高的空白占位高度,把整个div往上挤了3000像素,然后又通过负的margin把div往下挪3000像素。当中间的div高度到了3000以上的时候(准确的说是比两边div内部除了padding之外的高度多3000以上),左右两边的div高度可能就不够了,会比中间矮。
真正的自适应要用javascript。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询