我正在使用React
使用div
插件为ReactCSSTransitionGroup
的宽度设置动画。请检查小提琴here。
点击,每次红色div
都会模拟过渡。
opacity
过渡在这种情况下运作良好。但是,width
,height
或left
,top
(对于绝对定位的元素)等任何其他属性都不起作用。这可能是什么问题?
答案 0 :(得分:1)
在尝试使用比不透明度更复杂的过渡之前,确切了解ReactCSSTransitionGroup
的工作原理非常重要。
如果指定转换名称example
,则在调用render()
时会执行以下步骤:
example-enter
example-enter-active
example-enter
和example-enter-active
已从Component类中删除。卸载组件时,会执行以下步骤:
example-leave
example-leave
并添加班级example-leave-active
由于添加/删除这些类的方式,我发现动画max-width
或max-height
代替width
或{{1}更直观}。
我编辑了你的小提琴,举例说明:
答案 1 :(得分:0)
您放在style
道具中的CSS属性将应用为样式表中定义的内联样式和覆盖属性,除非您为后面的!important
标记分配。
在您的情况下,您在javascript中设置的width
和height
CSS属性优先于您在样式表中定义的width
和height