![](/img/trans.png)
[英]JavaScript or jQuery - Resizing tables according to div height/width
[英]Resizing a div according to height and width
我正在尝试根据浏览器的高度和宽度调整div的大小。 div开头应该是空的,并且只能使用javascript保持100%的宽度和50%的高度。
这是代码,在这种情况下,我使用screen.availHeight和screen.availWidth,仅在全屏模式下可以使用。
/* pw stand for width percentage ph for height percentage */ var adaptToScreen = function(el,pw,ph){ var screenW = screen.availWidth; var screenH = screen.availHeight; var w = screenW*(pw/100); var h = screenH*(ph/100); el.style.height=h+"px"; el.style.width=w+"px"; }; adaptToScreen(toDoList,100,50);
<div id="to-do"></div>
选中此字段,我已使用window.innerWidth和window.innerHeight获取视图区域的高度和宽度。 如果要使用clientWidth和clientHeight,则需要将HTML和BODY元素的高度设置为100%,以便它们占用视口的全部高度,并可以从中计算出50%的高度。
/* pw stand for width percentage ph for haight percentage */ var adaptToScreen = function(el,pw,ph){ //var screenW = document.body.clientWidth; //var screenH = document.body.clientHeight; var screenW = window.innerWidth; var screenH = window.innerHeight; var w = screenW*(pw/100); var h = screenH*(ph/100); el.style.height=h+"px"; el.style.width=w+"px"; }; var toDoList = document.getElementById('to-do'); adaptToScreen(toDoList,100,50);
<div id="to-do"></div>
在这种情况下,使用JS是多余的。 可以使用以下CSS来完成:
html, body {
margin: 0;
padding: 0;
height: 100%;
}
#to-do {
height: 50%;
width: 100%;
}
这应该工作:
AdaptToScreen(document.getElementById('to-do'),100,50);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.