如何根据浏览器的高度自动调整 div 标签的高度?
当我这样做时height: 100%
,它只会根据里面有多少文本来调整大小。
这是网页,它是第一个 div,蓝色背景的那个是我试图让高度自动调整大小的那个:
http ://rachelchaikof.com/awareness/
如何根据浏览器的高度自动调整 div 标签的高度?
当我这样做时height: 100%
,它只会根据里面有多少文本来调整大小。
这是网页,它是第一个 div,蓝色背景的那个是我试图让高度自动调整大小的那个:
http ://rachelchaikof.com/awareness/
实际上,您必须height: 100%;
为父元素设置一个,还要确保使用它来使您的 div 高度为 100%
html, body {
height: 100%;
width: 100%;
}
height:100%
表示与父级相同的高度,即您div
所在的元素。因此,如果要使其与浏览器的高度相同,则需要使其所有祖先都100%
高,一直到html
!
100% height - resize window problem
"height:100%" 表示浏览器窗口的 100%。如果页面超出浏览器窗口(即需要滚动才能访问),页面的这些位在设置为 height:100% 的元素之外。如果您有背景或其他效果(例如边框),则不会超出前 100%。
The correct way to handle things is
selector {min-height: 100%;} /* for proper browsers */
* html selector {height: 100%;} /* for IE */
如果您以这种方式使用 min-height,则必须确保所有前面的元素都具有 100% 的固定高度(即 html 和 body)。
或者你可以使用 Jquery。
$(window).resize(function() {
$('body').prepend('<div>' + $(window).width() + '</div>');
});
当谈到响应式设计时,有许多创造性的方法可以解决手头的问题。
您可以尝试使用百分比来使您的设计更具响应性。使用百分比是最大化用户视口的安全选择。
例如。
html, body {
height: 100%;
width: 100%;
}
从那里您可以使用您的站点容器并进行更具体的操作。
此外,HTML head 部分中的一些 JavaScript 可以帮助您检测屏幕尺寸并相应地调整不同的 CSS 规则:
<!-- hide script from old browsers
//<![CDATA[
var windowWidth=screen.availWidth;
var windowHeight=screen.availHeight
function sniffer() {
var el=document.getElementById("body");
if(screen.width<=600) {
el.style.width='100%';
el.style.height= windowHeight;
el.style.margin="auto";
}
}
onload=sniffer;
//]]>
// end hiding script from old browsers -->
上面的 JavaScript 正在检查用户的屏幕是否小于或等于 600px;如果是这样,它会调整 body 元素的宽度、高度、边距规则。
希望这可以帮助!