当我在悬停时在Chrome(24.0.1312.57)中应用转场时,它不会在鼠标输出时更新背景颜色。看到这个小提琴:http://jsfiddle.net/WKVJ9/ 这是代码:
.transition{
-webkit-transition: all 500ms ease-in-out;
}
.wrapper{
width:200px;
height:200px;
display:block;
background-color:cyan;
position:relative;
}
.hoverme{
border-radius:90px;
display: block;
width:50px;
height:50px;
top:50px;
right:-90px;
position:absolute;
-webkit-transform: rotate(-45deg);
}
.wrapper:hover .hoverme{
-webkit-transform: rotate(0deg);
right:0;
}
.hoverme:hover{
background-color:red;
}
和html:
<div class="wrapper">
<div class="hoverme transition">
Hover me
</div>
</div>
如果您将鼠标悬停在.wrapper和.hoverme上,然后快速将鼠标从此框移开,则.hoverme元素将仅为旋转和位置设置动画。
在我正在处理的网站上它甚至没有刷新悬停状态所以当动画结束并且背景保持不变时:悬停背景颜色...由于某种原因我无法在这里重现
是否可以使背景变得有生命?
答案 0 :(得分:1)
这是因为位置:绝对在.hoverme
尝试将其更改为位置:relative add margin-left:150px; (或要求)纠正.hoverme的位置...像这样:
.hoverme{
border-radius:90px;
display: block;
width:50px;
height:50px;
top:50px;
right:-90px;
position:relative;
margin-left:150px;
-webkit-transform: rotate(-45deg);
}
点击此处查看:http://jsfiddle.net/WKVJ9/1/