布局题
1、父元素里有两个子元素,要求,A元素高度固定为100px,B元素填满剩下的区域。请写出相应的css。(高度自适应的问题!!)
<div class="container">
<div class="A">
</div>
<div class="B">
</div>
</div>
答:
方法一
body, html {
height: 100%;
width: 100%;
}
.container {
width: inherit;
height: inherit;
background: #EEE;
position: relative;
}
.A {
background: #BBE8F2;
height: 100px;
}
.B {
background: #D9C666;
position: absolute;
top: 100px; //把上面的位置腾出来
// 其他部分填满
bottom: 0;
left: 0;
right: 0;
}
补充知识点
当absolute之后,没有为元素设置width和height的时候,设置top、bottom、left、right会影响元素的大小哦
子元素width = 父元素width - left - right;
子元素height = 父元素height - top - bottom;
总结
高度自适应的问题,absolute的top、bottom、left、right可以帮你解决。
原理就是,absolute的top、bottom、left、right和width、height的奇妙关系~
方法二
.A {
background: #BBE8F2;
height: 100px;
}
.B {
background: #D9C666;
height: calc(100% - 100px); // 注意:100px和-之间要有空格,不然会被解析成负号,而没有运算符号和不生效。
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix