我正在创建一个幻灯片菜单,橙色框位于菜单的一角,并出现带有橙色菜单名称的白色框。
问题在于我使用 :悬停 并将鼠标移动到该位置,它会启动,并自动进入开始位置。
如何让它完成动画?
http://jsfiddle.net/JudgeDredd/XWmme/1/
.smmo
{
width:195px;
height:45px;
background:#FF3300;
position:relative;
display:block;
}
.smmo:hover {
-webkit-animation-name:slideL ;
-webkit-animation-duration:1s;
}
@-webkit-keyframes slideL /* Safari and Chrome */
{
from {left:0px;}
to {left:200px;width:65px;}
}
答案 0 :(得分:2)
我通过这种方式使用transition
和:before
伪元素来提供解决方案:
HTML
<div class="smmo">Your Title</div>
CSS
.smmo {
position:relative;
color:orange;
text-align:center;
width:195px;
height:45px;
line-height:45px;
}
.smmo:before
{
content:" ";
width:100%;
height:100%;
background:#FF3300;
position:relative;
display:block;
position:absolute;
top:0;
left:0;
transition:all 1s;
}
.smmo:hover:before {
left:200px;
width:65px;
}
选中 Demo fiddle
答案 1 :(得分:1)