【发布时间】:2018-09-06 02:58:04
【问题描述】:
我正在尝试通过单击具有幻灯片效果的按钮来显示 div。当点击某物时,它将切换为显示或不可见的幻灯片效果。到目前为止,我已经通过这样做实现了这一点。
class App extends Component {
constructor() {
super();
this.state = {
myclass: '',
}
this.divclicked = this.divclicked.bind(this);
}
divclicked() {
if (this.state.myclass === '') {
this.setState({
myclass: 'coolclass'
})
}
else {
this.setState({
myclass: '',
})
}
}
render() {
return (
<div className="App">
<div id="box" onClick={this.divclicked}>
</div>
<div id="seconddiv" className={this.state.myclass}>
<p>help help</p>
<p>help help</p>
<p>help help</p>
<p>help help</p>
<p>help help</p>
</div>
</div>
);
}
}
export default App;
还有我的 CSS
#box {
height: 50px;
width: 50px;
background-color: red
}
#seconddiv.coolclass{
height:300px;
background: purple;
}
#seconddiv {
height: 0px;
transition: 0.5s;
overflow: hidden;
}
所以在这里,当点击 id 为“box”的红色框时,我给“seconddiv”一个类名,CSS 负责隐藏 div。问题是当我给出类名coolclass 时,我不想使用 px 但想使用百分比。所以目前,它是从 0px 到 300px。但我希望它从 0px 到 100%;我如何做到这一点。当我尝试将 100% 的高度放在 seconddiv 中时,幻灯片动画不起作用。
【问题讨论】:
-
希望
animate.css包对你有帮助