我需要让我的网页高度适应屏幕尺寸的高度,而不需要滚动。
HTML
<body>
<form id="form1" runat="server">
<div id="main">
<div id="content">
</div>
<div id="footer">
</div>
</div>
</form>
</body>
CSS
#content{ background-color:#F3F3F3; margin:auto;width:70%;height:700px;}
#footer{width:100%;background-color:#666666;height:200px;}
答案 0 :(得分:26)
一个快速,非优雅但工作独立的解决方案,内联CSS并且没有jQuery要求。 AFAIK也适用于IE9。
<body style="overflow:hidden; margin:0">
<form id="form1" runat="server">
<div id="main" style="background-color:red">
<div id="content">
</div>
<div id="footer">
</div>
</div>
</form>
<script language="javascript">
function autoResizeDiv()
{
document.getElementById('main').style.height = window.innerHeight +'px';
}
window.onresize = autoResizeDiv;
autoResizeDiv();
</script>
</body>
答案 1 :(得分:23)
固定定位将满足您的需求:
#main
{
position:fixed;
top:0px;
bottom:0px;
left:0px;
right:0px;
}
答案 2 :(得分:17)
答案 3 :(得分:4)
不要给出确切的高度,而是相对高度,加起来高达100%。例如:
#content {height: 80%;}
#footer {height: 20%;}
加入
html, body {height: 100%;}
答案 4 :(得分:0)
尝试:
#content{ background-color:#F3F3F3; margin:auto;width:70%;height:77%;}
#footer{width:100%;background-color:#666666;height:22%;}
(77%和22%大致保留content
和footer
的比例,不应导致滚动)
答案 5 :(得分:0)
您可以使用css将body标签设置为以下设置:
body
{
padding:0px;
margin:0px;
width:100%;
height:100%;
}
答案 6 :(得分:0)
使用这个,用你自己的班级“家”替换
(function ($) {
$(function(){"use strict";
$('.home').css({'height':($(window).height())+'px'});
$(window).resize(function(){
$('.home').css({'height':($(window).height())+'px'});
});
});
})(jQuery);
答案 7 :(得分:0)
确保通过添加重要内容来覆盖原始样式。
height: 100vh !important;