Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.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 使用过渡添加子级时div的平滑增长_Javascript_Jquery_Html_Css_Css Transitions - Fatal编程技术网

Javascript 使用过渡添加子级时div的平滑增长

Javascript 使用过渡添加子级时div的平滑增长,javascript,jquery,html,css,css-transitions,Javascript,Jquery,Html,Css,Css Transitions,尽管使用了transition,但以下代码的行为并不像我预期的那样,因此我可能不了解它们 理想情况下,单击该按钮将向id2div追加一个子项,并使id1div相应地平滑地增长 $(函数(){ $(“#id1按钮”)。单击(()=>{ $(“#id2”)。附加(“呵呵”) }); }); #id1{ 宽度:100%; 过渡期:全部2个月; } .孩子{ 背景色:柠檬色; 最小高度:50px; 边框:1件纯色丽贝卡紫色; 利润率:10px 0px; } #id2{ 填充:20px; 边框:2件纯蓝

尽管使用了
transition
,但以下代码的行为并不像我预期的那样,因此我可能不了解它们

理想情况下,单击该按钮将向
id2
div追加一个子项,并使
id1
div相应地平滑地增长

$(函数(){
$(“#id1按钮”)。单击(()=>{
$(“#id2”)。附加(“呵呵”)
});
});
#id1{
宽度:100%;
过渡期:全部2个月;
}
.孩子{
背景色:柠檬色;
最小高度:50px;
边框:1件纯色丽贝卡紫色;
利润率:10px 0px;
}
#id2{
填充:20px;
边框:2件纯蓝;
过渡:均为0.5缓;
}

点击

按下按钮时CSS属性不会更改,因此不触发任何CSS转换是正确的行为


要使
#id2
在添加新的子项时平稳增长,必须使用其他一些机制。

按下按钮时CSS属性不会更改,因此不触发任何CSS转换是正确的行为

要使
#id2
随着新孩子的加入而顺利成长,必须使用其他一些机制。

。我将动画更改为要附加的元素#id2至儿童

使用用于上的多个案例的样式,以及不用于ID上的样式,因为它们应该是唯一的

<div id='id1'>
  <button>click</button>
  <div id="id2"></div>
</div>

#id1 {
  width: 100%;
  transition: all 2 ease;
}

.child {
  background-color: lemonchiffon;
  min-height: 50px;
  border: 1px solid rebeccapurple;
  margin: 10px 0px;
  animation: animateElement linear .3s;
  animation-iteration-count: 1;
}

#id2 {
  padding: 20px;
  border: 2px solid blue;
}


@keyframes animateElement{
  0% {
    opacity:0;
    transform:  scaleY(0) translateY(-100%);
  }
  100% {
    opacity:1;
    transform:  scaleY(1) translateY(0%);
  }
}

$(function() {
  $("#id1 button").click(() => {
    $("#id2").append("<div class='child'>hehe</div>")
  });
});

点击
#id1{
宽度:100%;
过渡期:全部2个月;
}
.孩子{
背景色:柠檬色;
最小高度:50px;
边框:1件纯色丽贝卡紫色;
利润率:10px 0px;
动画:animateElement linear.3s;
动画迭代次数:1;
}
#id2{
填充:20px;
边框:2件纯蓝;
}
@关键帧动画元素{
0% {
不透明度:0;
变换:scaleY(0)translateY(-100%);
}
100% {
不透明度:1;
变换:scaleY(1)translateY(0%);
}
}
$(函数(){
$(“#id1按钮”)。单击(()=>{
$(“#id2”)。附加(“呵呵”)
});
});
。我将动画更改为要附加的元素#id2至儿童

使用用于上的多个案例的样式,以及不用于ID上的样式,因为它们应该是唯一的

<div id='id1'>
  <button>click</button>
  <div id="id2"></div>
</div>

#id1 {
  width: 100%;
  transition: all 2 ease;
}

.child {
  background-color: lemonchiffon;
  min-height: 50px;
  border: 1px solid rebeccapurple;
  margin: 10px 0px;
  animation: animateElement linear .3s;
  animation-iteration-count: 1;
}

#id2 {
  padding: 20px;
  border: 2px solid blue;
}


@keyframes animateElement{
  0% {
    opacity:0;
    transform:  scaleY(0) translateY(-100%);
  }
  100% {
    opacity:1;
    transform:  scaleY(1) translateY(0%);
  }
}

$(function() {
  $("#id1 button").click(() => {
    $("#id2").append("<div class='child'>hehe</div>")
  });
});

点击
#id1{
宽度:100%;
过渡期:全部2个月;
}
.孩子{
背景色:柠檬色;
最小高度:50px;
边框:1件纯色丽贝卡紫色;
利润率:10px 0px;
动画:animateElement linear.3s;
动画迭代次数:1;
}
#id2{
填充:20px;
边框:2件纯蓝;
}
@关键帧动画元素{
0% {
不透明度:0;
变换:scaleY(0)translateY(-100%);
}
100% {
不透明度:1;
变换:scaleY(1)translateY(0%);
}
}
$(函数(){
$(“#id1按钮”)。单击(()=>{
$(“#id2”)。附加(“呵呵”)
});
});

我不知道怎么可能重复,你能详细说明一下吗?不要在
height
属性上应用transition,而是应用
max height
属性。使用Jquery根据孩子的数量计算
max height
。但是我没有也不想要一个max height,随着孩子的增加,身高会发生变化,而不是像我在这个问题中悬停时那样。你不能在
height
上应用css转换。您必须使用jquery的
动画
。检查:我不知道如何可能重复,您可以详细说明吗?您可以应用
max height
属性,而不是在
height
属性上应用转换。使用Jquery根据孩子的数量计算
max height
。但是我没有也不想要一个max height,随着孩子的增加,身高会发生变化,而不是像我在这个问题中悬停时那样。你不能在
height
上应用css转换。您必须使用jquery的
动画
。检查: