可以说我们有这个html:
<!DOCTYPE html>
<html>
<head></head>
<body>
<div id="navbar"></div>
<div id="main">
<textarea id="input"></textarea>
<textarea id="output"></textarea>
</div>
</body>
</html>
和这个CSS:
html,body,#main{
height:100%;
}
html{ border: 1px solid red; }
body{ border: 1px solid green; }
#main{ border: 1px solid blue; }
#navbar{ height: 30px; }
textarea{
width: 45%;
height: 60%;
resize: vertical;
}
#input{
float: left;
}
#main{
float: right;
}
如果查看结果,则可以看到此处body超出html标签,#main超出body和html标签。如何使所有元素都超出父级高度?所以我希望结果是这样的:
一方面,body
它的默认边距为8px;
首先重置它们。
body {
margin:0px;
}
此外,borders
不会将高度计算在内,而是将它们相加。因此,高度实际上是100%+ 2px边框。您可以通过添加来更改此设置box-sizing: border-box;
。
这将解决html
/的问题body
。现在,#main
发生这种情况的原因是,将a30px
nav
放置在其外部。#main
实际上是100%,但是100%
低于30px
,这就是为什么您看到差距。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句