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中实现这一点。所以,一开始就这样做,当你遇到问题时,我相信我们可以帮助你。