Jquery 调整div大小,但保留尺寸
我想要一个能反应并适合屏幕窗口大小的Jquery 调整div大小,但保留尺寸,jquery,html,resize,css,Jquery,Html,Resize,Css,我想要一个能反应并适合屏幕窗口大小的。的尺寸应为2:3,因此高度为3:3,宽度为2:3。通过编写width:200px,很容易在css中创建它和高度:300px 问题是我想根据屏幕大小调整的高度。我还希望里面的文字可以调整大小。我知道可以通过javascript或jQuery实现,但我真的不知道如何实现。类似于获取高度并将其拆分为三,然后乘以二,然后生成.css({'width',newWidth}) 而且里面的文字应该是一样的 我找到了正确的方法。我不得不做一点改变,但它现在起作用了 $(wi
。
的尺寸应为2:3,因此高度为3:3,宽度为2:3。通过编写width:200px,很容易在css中创建它代码>和<代码>高度:300px代码>
问题是我想根据屏幕大小调整
的高度。我还希望里面的文字可以调整大小。我知道可以通过javascript或jQuery实现,但我真的不知道如何实现。类似于获取高度并将其拆分为三,然后乘以二,然后生成.css({'width',newWidth})代码>
而且里面的文字应该是一样的
我找到了正确的方法。我不得不做一点改变,但它现在起作用了
$(window).resize(function() {
var ratio = 0.6;
$('#hovsa').width($(window).height() * ratio).height($(window).height());
// instead of directly using "$(window).width() * ratio", you can call a method to
// calculate width and height each time window is resized.
})
我把宽度改成了高度比,效果很好。我现在唯一需要做的就是使fontsize也以同样的方式运行。我认为使这些“调整大小”的最好方法是只使用相对值(例如百分比,em),这样您就能够保持web应用程序的相同外观
如果您想使用像素之类的固定值,您可以创建不同的.css文件,并根据客户端屏幕分辨率使用这些文件,但这意味着要做大量工作,不值得这么做
希望这有帮助
Aymeric.我认为调整这些“大小”的最佳方法是只使用相对值(例如百分比,em),这样您就能够为您的web应用程序保持相同的外观
如果您想使用像素之类的固定值,您可以创建不同的.css文件,并根据客户端屏幕分辨率使用这些文件,但这意味着要做大量工作,不值得这么做
希望这有帮助
Aymeric。这里有一个Javascript中使用jQuery的方法,可以根据需要调整大小
function resize(divToResizeId, newHeight) {
var divToResize = $("#" + divToResizeId);
var resizeRatio = newHeight / divToResize.height();
var currentFontSize = divToResize.css('font-size');
var currentFontSizeNum = parseFloat(currentFontSize, 10);
var newFontSize = currentFontSizeNum * resizeRatio;
divToResize.height(newHeight);
divtoResize.width(divtoResize.width() * resizeRatio);
divToResize.css('font-size', newFontSize);
}
这里有一个Javascript中使用jQuery的方法,可以根据需要调整大小
function resize(divToResizeId, newHeight) {
var divToResize = $("#" + divToResizeId);
var resizeRatio = newHeight / divToResize.height();
var currentFontSize = divToResize.css('font-size');
var currentFontSizeNum = parseFloat(currentFontSize, 10);
var newFontSize = currentFontSizeNum * resizeRatio;
divToResize.height(newHeight);
divtoResize.width(divtoResize.width() * resizeRatio);
divToResize.css('font-size', newFontSize);
}
如前所述,如果所需大小始终相同,则最好使用百分比值
但是,在其他情况下,如果您需要div的固定大小或计算大小,则可以侦听窗口大小调整事件并进行css修改:
$(window).resize(function() {
var ratio = 0.8;
$('#divId').width($(window).width() * ratio).height($(window).height() * ratio);
// instead of directly using "$(window).width() * ratio", you can call a method to
// calculate width and height each time window is resized.
})
如前所述,如果所需大小始终相同,则最好使用百分比值
但是,在其他情况下,如果您需要div的固定大小或计算大小,则可以侦听窗口大小调整事件并进行css修改:
$(window).resize(function() {
var ratio = 0.8;
$('#divId').width($(window).width() * ratio).height($(window).height() * ratio);
// instead of directly using "$(window).width() * ratio", you can call a method to
// calculate width and height each time window is resized.
})
只要对其所有容器(包括body
和html
)执行相同操作,就可以在屏幕上设置高度为100%的div。这就是您想要的吗?正如我从您的描述中看到的,您已经知道如何在javascript/jQuery中实现这一点。因此,首先,当您遇到问题时,我相信我们可以帮助您。设置屏幕高度为100%的div非常简单,只要您对其所有容器(包括body
和html
)执行相同操作即可。这就是您想要的吗?正如我从您的描述中看到的,您已经知道如何在javascript/jQuery中实现这一点。所以,一开始就这样做,当你遇到问题时,我相信我们可以帮助你。