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

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

但是,我重写了这一点,并显式设置与jQuery的高度:

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

我怎样才能扭转这种情况? 我想删除高度风格,并使其恢复到自动/自然高度?

去除高度:

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

像John指出的那样,把高度设置为auto

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

(使用jQuery 1.4进行检查)

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

我喜欢使用它,因为它与您明确使用.height(val)的方式是对称的,可以将其设置在第一位,并且可以跨浏览器使用。

也许类似

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

你可以试试这个:

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

要重置div的高度,只需尝试一下

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

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

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

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

感谢大家展示所有这些例子。 在尝试你的例子之后,我仍然在小屏幕上如480像素以下的联系页面遇到问题。 Bootstrap不断插入height: auto

元素督察/ Devtools会显示高度:

 element.style { } 

在我的例子中,我看到: section#contact.contact-container | 303 x 743 浏览器窗口中的section#contact.contact-container | 303 x 743

因此,以下全面的工作来消除这个问题:

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

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

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