【问题标题】:ReactCSSTransitionGroup not animating properly for transform translateReactCSSTransitionGroup 没有为转换转换正确设置动画
【发布时间】:2016-04-23 23:20:28
【问题描述】:

在路线之间添加动画没有问题。但是当我尝试以下简单的事情时:

var IntroSection = React.createClass({
render: function(){
    return(

      <div id = "intro">

      <ReactCSSTransitionGroup transitionName="introFirst" transitionAppear={true} transitionAppearTimeout={1300}>
        <span key={"hello"}>  Hello, </span>
      </ReactCSSTransitionGroup>

     [...]
    </div>

css:

  .introFirst-appear{
    opacity: 0;
    transform: translateX(-250px);
    transition: opacity 10s linear;
  }

  .introFirst-appear.introFirst-appear-active {
    opacity: 1;
    transform:translateX(0px);
  }

Opacity 部分完美运行,但 translateX 部分根本不起作用。什么都没动。

div #intro的css,没有什么特别的,只有fonttext-alignwidthfloat:right

【问题讨论】:

    标签: css reactjs reactcsstransitiongroup


    【解决方案1】:

    您只是指定应使用过渡规则对不透明度进行动画处理。另外,根据this anwer,transform 属性仅适用于块级元素。尝试这样做:

    .introFirst-appear {
         /*...*/
         display: inline-block;
         transition: opacity 10s linear, transform 10s linear;
    }
    

    【讨论】:

    • o 我之前实际上在我的代码中使用了ALL,但这也不起作用。因为我有 translateX(-250px) 它应该从 -250px 开始,对吧?但它没有,它从开始到结束都停留在原处
    • 如果使用开发工具将transform: translateX(-250px); 规则添加到元素会发生什么?
    • 开发工具就像 chrome 上的东西一样,你右键单击并选择“检查”对吗?我试过了,没有任何改变。如果我放左:-250px 除非我放相对位置
    • 是的,这就是我所说的开发工具。还更新了我的答案,提供了有关 display 属性的更多信息。
    猜你喜欢
    • 2021-01-28
    • 1970-01-01
    • 1970-01-01
    • 2013-11-13
    • 2012-05-06
    • 2012-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多