假设一个div1,里面有div2和div3,div2已经布局好了高度固定,如何让div3铺满剩下的高度?请附上自写的代码,谢谢!
回复讨论(解决方案)
求人气。
function getdomheight(dom){ //获取一个dom的高度
return dom.offsetHeight;
}
var div1 = document.getElementById(‘div1的id’);
var div2 = document.getElementById(‘div2的id’);
var div3 = document.getElementById(‘div3的id’);
div3.style.height = getdomheight(div1) – getdomheight(div2) +’px’;
就是减法
function getdomheight(dom){ //获取一个dom的高度
return dom.offsetHeight;
}
var div1 = document.getElementById(‘div1的id’);
var div2 = document.getElementById(‘div2的id’);
var div3 = document.getElementById(‘div3的id’);
div3.style.height = getdomheight(div1) – getdomheight(div2) +’px’;
就是减法
有没有用css就能实现的?
function getdomheight(dom){ //获取一个dom的高度
return dom.offsetHeight;
}
var div1 = document.getElementById(‘div1的id’);
var div2 = document.getElementById(‘div2的id’);
var div3 = document.getElementById(‘div3的id’);
div3.style.height = getdomheight(div1) – getdomheight(div2) +’px’;
就是减法
有没有用css就能实现的?
查阅 css盒布局
另外只是老浏览器不支持
function getdomheight(dom){ //获取一个dom的高度
return dom.offsetHeight;
}
var div1 = document.getElementById(‘div1的id’);
var div2 = document.getElementById(‘div2的id’);
var div3 = document.getElementById(‘div3的id’);
div3.style.height = getdomheight(div1) – getdomheight(div2) +’px’;
就是减法
这个方法不行,没有抛出异常?
用jQuery获取高度相减,兼容性较好;
下面例子中border仅用于查看是否实现想要效果,实际应用时如果有border,相减时需要将border考虑进去
nbsp;HTML>
$(document).ready(function(){
init();
});
function init(){
var h1 = $(“#d1”).height();
var h2 = $(“#d2”).height();
var style = “height:”+(h1-h2)+”px;background:grey;width:100%;”
$(“#d3”).attr(“style”,style);
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3092112.html