1

当我在悬停时在 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 元素只会为旋转和位置设置动画。

在我正在处理的网站上,它甚至不会刷新悬停状态,因此当动画完成并且背景保持不变时:hover background-color ...由于某种原因我无法在这里重现

是否可以使背景动画?

4

1 回答 1

1

这是因为 position:absolute in .hoverme

尝试将其更改为 position: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/

于 2013-02-13T16:46:56.397 回答