我創建了一系列「窗戶」或「小狗門」,當它們徘徊時,似乎像小狗門一樣推回到「窗口」。CSS3自定義動畫觸發後:hover
我已經能夠創造小狗關門的自然看起來效果。它來回擺動幾次,然後恢復到默認位置。
我的問題是,我還沒有能夠找到一種方法來觸發懸停時發佈懸停。我知道它是一個邏輯問題,因爲我已經看過它的例子here並使用關鍵幀[這裏] [2]。我也知道我可以用javascript來解決這個問題,但我堅持嚴格遵守這個網站的CSS。
更新:
下面是工作示例。 Fiddle
謝謝大雄!
HTML:
<ul class="window">
<li>
<figure class="door">
<img src="http://www.ta-sa.org/data/images/laughing_man_big_2.png" alt="">
</figure>
</li>
</ul>
CSS:
* {
list-style: none;
}
.door {
width: 300px;
height: 300px;
margin: 0;
position: relative;
perspective:1000px;
-webkit-perspective:1000px;
/* Safari and Chrome */
}
.door img {
background-color: #E8585A;
width: 100%;
display: block;
position: relative;
transform-origin: top;
-ms-transform-origin: top;
/* IE 9 */
-webkit-transform-origin: top;
/* Safari and Chrome */
-moz-animation: swing 2s;
-webkit-animation: swing 2s;
animation: swing 2s;
z-index: 10;
}
.door:hover img {
transform-origin: top;
-webkit-transform-origin: top;
-webkit-transform: rotateX(-60deg);
-webkit-transition: all .2s;
background-color: #00a99d;
-webkit-animation: swing;
/* Safari and Chrome */
}
@-webkit-keyframes swing {
0%, 20%, 40%, 60%, 80%, 100% {
-webkit-transform-origin: top center;
}
0% {
-webkit-transform: rotateX(-60deg);
}
20% {
-webkit-transform: rotateX(-60deg);
}
40% {
-webkit-transform: rotateX(25deg);
}
60% {
-webkit-transform: rotateX(-20deg);
}
80% {
-webkit-transform: rotateX(5deg);
}
100% {
-webkit-transform: rotateX(0deg);
}
}
當懸停發佈只用'css' – iConnor
這傢伙做到了你不能觸發任何東西。 http://css-tricks.com/examples/DifferentTransitionsOnOff/ –
這是動畫回到它的默認位置,所以是的,你可以嘗試和僞造它,但你不能調用一個「'mouseleave」的自定義動畫''事件'css' – iConnor