如何使用jQuery从DIV中删除高度样式?

时间:2009-04-29 20:39:37

标签: jquery html css layout

默认情况下,DIV的高度由其内容决定。

但是,我重写它并使用jQuery显式设置高度:

$('div#someDiv').height(someNumberOfPixels);

我该怎么扭转呢?我想删除高度样式并使其恢复到自动/自然高度?

9 个答案:

答案 0 :(得分:98)

删除高度:

$('div#someDiv').css('height', '');
$('div#someDiv').css('height', null);
像约翰指出的那样,将身高设置为auto

$('div#someDiv').css('height', 'auto');

(使用jQuery 1.4检查)

答案 1 :(得分:22)

$('div#someDiv').height('auto');

我喜欢使用它,因为它与您明确使用.height(val)首先设置它的方式是对称的,并且适用于浏览器。

答案 2 :(得分:18)

可能像

$('div#someDiv').css("height", "auto");

答案 3 :(得分:16)

你可以试试这个:

$('div#someDiv').height('');

答案 4 :(得分:14)

要重置div的高度,请尝试

$("#someDiv").height('auto');

答案 5 :(得分:3)

$('div#someDiv').css('height', '');

答案 6 :(得分:0)

只是为了在这里添加答案,我使用高度作为一个函数,有两个选项指定高度,如果它小于窗口高度,或将其设置回自动

var windowHeight = $(window).height();
$('div#someDiv').height(function(){
    if ($(this).height() < windowHeight)
        return windowHeight;
    return 'auto';
});

如果内容小于窗口高度,我需要将内容垂直居中,否则让它自然滚动,这就是我提出的内容

答案 7 :(得分:0)

感谢大家展示所有这些例子。在尝试您的示例后,我仍然在小型媒体屏幕(如480px以下)上的联系页面遇到问题。 Bootstrap继续插入height: auto

Element Inspector / Devtools将显示高度:

element.style {

}

就我而言,我在浏览器窗口中看到了section#contact.contact-container | 303 x 743

所以以下全长可以解决这个问题:

$('section#contact.contact-container').height('');

答案 8 :(得分:-6)

$('div#someDiv').removeAttr("height");