所以我在互联网上找到了这个很棒的手风琴,我希望通过动画来使它更加精彩。 我对动画很新,所以我无法绕过它。我如何使用https://daneden.github.io/animate.css/
中的SlideDown动画我在网上找到的这支手风琴 http://cssdeck.com/labs/5jlzqlt6
我尝试了什么。 我试着改变
.accordion:target{display:block;}
从此
#accordion{margin:100px auto;width:400px;}
#accordion ul{list-style:none;margin:0;padding:0;}
.accordion{display:none;}
.accordion:target{display:block;}
#accordion ul li a{text-decoration:none;display:block;padding:10px;}
.accordion{padding:4px;}
对此..
#accordion{margin:100px auto;width:400px;}
#accordion ul{list-style:none;margin:0;padding:0;}
.accordion{display:none;}
.accordion:target{display:block; animation-name: bounce; transform-origin: center bottom;}
#accordion ul li a{text-decoration:none;display:block;padding:10px;}
.accordion{padding:4px;}
我试过玩它但似乎什么都没有用。 我该怎么做?
修改
我得到了它的工作,但有一个小问题..
我的盒子只能使用100px ..我尝试将其更改为自动,但删除了幻灯片效果
这是我改变的那个
.accordion:target{-webkit-transition: all 150ms ease-in-out; transition: all 150ms ease-in-out; height: 100px}
正如你所看到的那样,盒子不会改变大小。 最后一个是溢出的。 https://i.imgur.com/D1BpaPO.gifv
答案 0 :(得分:1)
您无法为具有display:none属性的元素设置动画。这是一个简单的动画,动画不透明度和身高值
.accordion {
opacity: 0;
height: 0;
transition: all 500ms ease;
padding: 0;
}
.accordion:target {
opacity: 1;
height: 100px;
padding: 4px;
}
如果你想使用animate.css库,你需要使用Javascript并在用户点击它时将.slideInUp
和.animated
类添加到你的元素中。
body {
background: #d0d0d5;
}
/* Basic stucture
=====================*/
#accordion {
margin: 100px auto;
width: 400px;
}
#accordion ul {
list-style: none;
margin: 0;
padding: 0;
}
.accordion {
opacity: 0;
height: 0;
transition: all 500ms ease;
padding: 0;
}
.accordion:target {
opacity: 1;
height: 100px;
padding: 4px;
}
#accordion ul li a {
text-decoration: none;
display: block;
padding: 10px;
}
/* Colors
====================*/
#accordion ul {
/*box-shadow*/
-webkit-box-shadow: 0 4px 10px #BDBDBD;
-moz-box-shadow: 0 4px 10px #BDBDBD;
box-shadow: 0 4px 10px #BDBDBD;
/*border-radius*/
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
}
#accordion ul li a {
background: #fff;
border-bottom: 1px solid #E0E0E0;
color: #999;
}
.accordion {
background: #fdfdfd;
color: #999;
}
.accordion:target {
border-top: 3px solid #FFCDCD;
}
<div id="accordion">
<ul>
<li>
<a href="#one">Example one</a>
<div id="one" class="accordion">
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Amet in laborum praesentium esse aliquam molestiae animi non facilis perspiciatis corporis ad molestias quo harum suscipit ipsum incidunt ea voluptates accusantium.
</div>
</li>
<li>
<a href="#two">Example two</a>
<div id="two" class="accordion">
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Amet in laborum praesentium esse aliquam molestiae animi non facilis perspiciatis corporis ad molestias quo harum suscipit ipsum incidunt ea voluptates accusantium.
</div>
</li>
<li>
<a href="#three">Example three</a>
<div id="three" class="accordion">
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Amet in laborum praesentium esse aliquam molestiae animi non facilis perspiciatis corporis ad molestias quo harum suscipit ipsum incidunt ea voluptates accusantium.
</div>
</li>
</ul>
</div>
答案 1 :(得分:0)
使用css height属性和转换。将高度设置为零以隐藏元素。使用不同的类并使用javascript更改它们。