【发布时间】:2019-04-10 13:15:04
【问题描述】:
如何使用 react 或 CSS 在最初隐藏的 li 标签中淡入淡出?我有代码所以显示 ul 并且当鼠标悬停在它上面时 li 进来。但是,如何让 li 像在 JQuery 中一样进行动画处理?
import React, { Component } from 'react';
class SideBar extends Component {
state = {
activeItem: ''
};
mouseOver = () => {
console.log('in');
this.setState({activeItem: 'collapsed' });
};
mouseOut = () => {
console.log('out');
this.setState({activeItem: '' });
};
render() {
const { activeItem, hovering } = this.state;
return(
<header className="main-header">
<div className="main-header-frame">
<div className="header-wrapper">
<ul>
<li>
<a onMouseLeave={this.mouseOut} onMouseOver={this.mouseOver} href='/test'>Test1</a>
<ul className={activeItem === "collapsed" ? 'display' : 'disappear'}>
<li>t1</li>
<li>t2</li>
</ul>
</li>
</ul>
</nav>
</div>
</div>
</header>
)
}
};
export default SideBar;
我的 CSS 如下:
.disappear {
border: 1px solid red;
display: none;
transition: all 1.6s ease-in-out;
-webkit-transition: all 1.6s ease-in-out;
-moz-transition: all 1.6s ease-in-out;
-o-transition: all 1.6s ease-in-out;
transition-delay: .4s;
}
【问题讨论】:
-
你尝试过使用 ReactCSSTransitionGroup 吗?结帐reactjs.org/docs/animation.html
-
@PraveenRaoChavan.G 我现在正在阅读它。
-
但是如何让 li 元素淡入淡出?
标签: javascript html css reactjs frontend