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

Zac*_*son 85 html css jquery layout

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

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

$('div#someDiv').height(someNumberOfPixels);
Run Code Online (Sandbox Code Playgroud)

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

小智 99

删除高度:

$('div#someDiv').css('height', '');
$('div#someDiv').css('height', null);
Run Code Online (Sandbox Code Playgroud)

像John指出的那样,将身高设置为auto:

$('div#someDiv').css('height', 'auto');
Run Code Online (Sandbox Code Playgroud)

(用jQuery 1.4检查)

  • 你给了三个解决方案,我可以确认设置高度为""工作,不知道其他人. (6认同)
  • 在 jQuery 1.9 中使用 '' 但使用 `null` 不会。 (2认同)

non*_*lar 22

$('div#someDiv').height('auto');
Run Code Online (Sandbox Code Playgroud)

我喜欢使用它,因为它与你如何明确地使用.height(val)来设置它是对称的,并且可以跨浏览器工作.

  • 这将强制将高度设置为自动高度,从而覆盖所有现有的CSS规则。在某些特定情况下可以这样做,但通常会导致问题。 (2认同)

Joh*_*ker 18

也许是这样的

$('div#someDiv').css("height", "auto");
Run Code Online (Sandbox Code Playgroud)

  • 这将覆盖应应用的任何现有 CSS 规则,这可能是一个问题。 (2认同)

小智 18

你可以试试这个:

$('div#someDiv').height('');
Run Code Online (Sandbox Code Playgroud)

  • 那应该是正确的答案,因为这删除了css()样式值,这对于用js调整大小很有用:)干杯,谢谢 (2认同)

Sve*_*nke 14

要重置div的高度,请尝试

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


小智 5

$('div#someDiv').css('height', '');
Run Code Online (Sandbox Code Playgroud)