CSS如何将div高度设置为100%减去nPx

我有一个包装器div,其中两个容器彼此相邻。在此容器上方,我有一个包含我的标头的div。包装div必须为100%减去标题的高度。标头约为60像素。这是固定的。所以我的问题是:如何将包装div的高度设置为100%减去60像素?

<div id="header"></div>

<div id="wrapper">

<div id="left"></div>

<div id="right"></div>

</div>

回答:

这是一个正常工作的CSS,已在Firefox / IE7 / Safari / Chrome / Opera下进行了测试。

* {margin:0px;padding:0px;overflow:hidden}

div {position:absolute}

div#header {top:0px;left:0px;right:0px;height:60px}

div#wrapper {top:60px;left:0px;right:0px;bottom:0px;}

div#left {top:0px;bottom:0px;left:0px;width:50%;overflow-y:auto}

div#right {top:0px;bottom:0px;right:0px;width:50%;overflow-y:auto}

w3c尚未批准“ overflow-y”,但是每个主流浏览器都支持它。如果两个div的#left和#right的内容过高,它们将显示垂直滚动条。

为了在IE7下正常工作,您必须通过添加DOCTYPE来触发符合标准的模式:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"

"http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>

<title></title>

<style type="text/css">

*{margin:0px;padding:0px;overflow:hidden}

div{position:absolute}

div#header{top:0px;left:0px;right:0px;height:60px}

div#wrapper{top:60px;left:0px;right:0px;bottom:0px;}

div#left{top:0px;bottom:0px;left:0px;width:50%;overflow-y:auto}

div#right{top:0px;bottom:0px;right:0px;width:50%;overflow-y:auto}

</style>

</head>

<body>

<div id="header"></div>

<div id="wrapper">

<div id="left"><div style="height:1000px">high content</div></div>

<div id="right"></div>

</div>

</body>

以上是 CSS如何将div高度设置为100%减去nPx 的全部内容, 来源链接: utcz.com/qa/422824.html

回到顶部