Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery是否在具有最小高度属性的元素上设置高度动画?_Javascript_Jquery_Css - Fatal编程技术网

Javascript jQuery是否在具有最小高度属性的元素上设置高度动画?

Javascript jQuery是否在具有最小高度属性的元素上设置高度动画?,javascript,jquery,css,Javascript,Jquery,Css,我在CSS中设置了一个最小高度为300px的元素: <!-- HTML --> <div id="summary"></div> <div id="collapse"></div> /* CSS */ #summary { min-height: 300px } 然而,什么都没有发生,我认为这是因为最小高度属性 是的,但是我仍然不知道如何使#summarydiv平滑地动画化-按照他们的建议将最小高度设置为auto会使div消失,然后

我在CSS中设置了一个最小高度为300px的元素:

<!-- HTML -->
<div id="summary"></div>
<div id="collapse"></div>
/* CSS */
#summary { min-height: 300px } 
然而,什么都没有发生,我认为这是因为最小高度属性

是的,但是我仍然不知道如何使
#summary
div平滑地动画化-按照他们的建议将最小高度设置为auto会使div消失,然后重新出现!有人能帮忙吗


更新:我已经做了

你可以试着做类似的事情

$("#collapse").click(function() {
   var summary = $("#summary"),
       height  = summary.height();

   summary
     .css({ height: height + 'px', minHeight: 0 }) 
     .animate({ height: 100}, 1000);
});

其想法是重置
min height
,并将css
height
属性设置为动画开始前元素本身的计算高度。

当您在
单击
事件中将高度降低到100且最小高度为300时,需要在css in中使用
height
,而不是
min height

改变

#summary { min-height: 300px } 


如果需要使用最小宽度,则需要在动画中更改最小宽度而不是高度。

在小提琴中尝试此操作:

更改此项:

height: 50
为此:

$('#summary').animate({ 
  'min-height': 50+'px' // <--see the quotes at min-height and add pixels to it
}, 1000);
$('#摘要')。设置动画({

“最小高度”:50+'px'//谢谢,这是我最好的解决方案,所以我接受了。尽管
min height
也可以设置动画。
height: 50
$('#summary').animate({ 
  'min-height': 50+'px' // <--see the quotes at min-height and add pixels to it
}, 1000);