子节点填充父元素除去一固定高度后的剩余高度

例如节点结构如下:

<div class=‘container‘>
  <div class="top">top</div>
  <div class="bottom">bottom</div>
</div>

父元素高度为一定值(实际应用中是页面加载后再设置的值),子元素.top的高度为50px,要求.bottom的高度填充父元素剩余的所有高度。

用.bottom{height:100%;}肯定不行,因为这样它的高度会等于父元素的高度,而不是小于。

解决方法:同时设置绝对定位元素的top和bottom来拉伸它的高度。

.container{height:200px;background: gray;position: relative;}
.top{background: green;height: 50px;}
.bottom{background: blue;position:absolute;width:100%;left: 0;top:50px;bottom:0;}

运行代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
.container{height:200px;background: gray;position: relative;}
.top{background: green;height: 50px;color:#fff;}
.bottom{background: blue;position:absolute;width:100%;left: 0;top:50px;bottom:0;color:#fff;}
</style>
</head>
<body>
<div class=‘container‘>
<div class="top">top</div><div class="bottom">bottom</div>
</div>
</body>
</html>

时间: 2024-11-11 04:36:42

子节点填充父元素除去一固定高度后的剩余高度的相关文章

解决IE6,IE7下子元素使用position:relative、父元素使用overflow:auto后,子元素不随着滚动条滚动的问题

在IE6,IE7下,子元素使用position:relative.父元素使用overflow:auto后,我们预期的是滚动条滚动时,子元素也随着滚动,实际情况是内容不滚动,就感觉你是定位定在那里了. 解决办法是父元素添加position:relative样式

JS获取子节点、父节点和兄弟节点的方法实例总结

JS获取子节点.父节点和兄弟节点的方法实例总结 原生js 参考网址 Jquery 参考网址 原文地址:https://www.cnblogs.com/renxiuxing/p/10180558.html

[ jquery 选择器 :nth-last-of-type() ] 选取指定(p)父元素下的从后向前数的指定第一个子元素(无关目标元素在父元素中所处的位置)

选取指定(p)父元素下的从后向前数的指定第一个子元素(无关目标元素在父元素中所处的位置): 实例: <!DOCTYPE html> <html lang='zh-cn'> <head> <title>Insert you title</title> <meta http-equiv='description' content='this is my page'> <meta http-equiv='keywords' conte

ztree 获取子节点所有父节点的name的拼接

//获取子节点,所有父节点的name的拼接字符串function getFilePath(treeObj){if(treeObj==null)return "";var filename = treeObj.name;var pNode = treeObj.getParentNode();if(pNode!=null){filename = getFilePath(pNode) +">"+ filename;}return filename;} 原文地址:ht

通过子节点查找父节点

lz在用element-ui时候 用到Cascader 级联选择器多选的时候 是要进行通过子节点查找所有的父节点的需求:于是有了下面的代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>find family</title> <script type="text/javascript&

MySQL 拼接表名递归寻找子节点和父节点

BEGIN declare lev int; -- 查询父级 set lev=1; drop table if exists tmp1; CREATE TABLE tmp1(ID VARCHAR(40),Wl_Code varchar(50),ParentCode varchar(40) ,levv INT); -- 用拼接的方式拼接表名和参数 SET @sqlcmd = CONCAT('INSERT tmp1 SELECT ID,Wl_Code,ParentCode,1 FROM ',tabl

[extjs] ExtJS4 treepanel 子节点选中父节点自动选中,选中父节点 子节点自动全部选中

ExtJS4 treepanel 主要添加viewConfig重的代码: xtype:'treepanel', store: menuStore, id:'menuTreePanel', viewConfig : { //checkbox联动 onCheckboxChange : function(e, t) { var item = e.getTarget(this.getItemSelector(), this.getTargetEl()), record; if (item){ recor

【转载】设置event.cancelBubble,使触发子元素的onclick不同时触发父元素的onclick

由于HTML中的对象都是层次结构,比如一个Table包含了多个TR,一个TR包含了多个TD Bubble就是一个事件可以从子节点向父节点传递,比如鼠标点击了一个TD,当前的event.srcElement就是这个TD,但是这种冒 泡机制使你可以从TR或者Table处截获这个点击事件,但是如果你event.cancelBubble,则就不能上传事件. 例子: <html> <body> <table border="1" width="26%&qu

css之子元素获取(未定义高度)父元素的高度

你可能碰到过这样的需求,一个高度不固定的区域(内容由用户创造),当鼠标经过该区域或者其神马操作时,需要出现一个与该区域一样大的模版: 我们用一个span来处理这个mask.由于 .sample-1 和 .sample-2 的高度是不确定的,也就是说我们没有对它们定义 height.如果父元素没有定义高度,子元素仍然可以通过 height:100% 的方式来得到父元素的实际高度. 除了IE6,几乎所有的主流浏览器都支持子元素获取父元素(未定义高度)的高度: 对于这个用户创造内容的区域,高度会在一个