我需要创建以下结构:
[ 30px height ]
[ full height (100% - 30px) ]
是否可以通过HTML5 + CSS3(跨浏览器)实现这一目标?这个DIV不能重叠。
答案 0 :(得分:3)
在CSS中使用calc()
html, body {
height: 100%;
}
div.black {
background: #000;
height: calc(100% - 30px);
}
.red {
height: 30px;
background: #f00;
}
Demo(错过了30px div
在上面)
答案 1 :(得分:1)
您可以通过绝对定位实现此目的,而无需使用实验和not widely supported calc
功能,自1999年以来,每个浏览器都可以使用以下功能:
<div id="root">
<div id="top"></div>
<div id="rest"></div>
</div>
#root {
height:300px;
width:300px;
background:blue;
position:relative;
}
#top {
height:24px;
position:absolute;
background:green;
border:3px solid maroon;
width:100%;
}
#rest {
border:3px solid yellow;
position:absolute;
width:100%;
top:30px;
bottom:0;
background:red;
}