繁体   English   中英

出现图像时如何为图像添加过渡效果?

[英]How can I add transition effect to images when they show up?

在我的React应用程序上,我试图在图像显示在页面上时显示效果。 我做了下面的代码,但它们显示了任何效果。 我直接在div标签上设置样式,因为它们会显示任何触发效果,例如悬停或单击。 我走错路了吗?

JSS样式

column: {
  ...
  "& div": {
    transition: "all 0.5s ease-in-out"
  }
}

JSX

renderColumn(column) {
  return column.map((item, i) => (
    <div key={i}>
      <img ... />
    </div>
  ));
}

React Transition Group解决了这个问题。 它由React社区维护。 您可以按以下方式使用它:

import { CSSTransitionGroup } from 'react-transition-group'
.
.
.
<CSSTransitionGroup
    transitionName="example"
    transitionEnterTimeout={500}
    transitionLeaveTimeout={300}
>
    <img/>
</CSSTransitionGroup>

在您的css文件中,定义这些样式。 他们根据输入/退出事件提到css类。

.example-enter {
  opacity: 0.01;
}

.example-enter.example-enter-active {
  opacity: 1;
  transition: opacity 500ms ease-in;
}

.example-leave {
  opacity: 1;
}

.example-leave.example-leave-active {
  opacity: 0.01;
  transition: opacity 300ms ease-in;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM