微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HTML – CSS3转换保持重置旋转

参见英文答案 > CSS animation on hover stay at last keyframe when using transform: rotate1个
我有一个CSS3过渡但在转换结束时我的旋转重置为正常状态. HTML和CSS很简单:

HTML

<a href="#"><span></span>Test</a>

CSS

a {
    text-decoration: none;
}
a span {
    display: inline-block;
    width: 25px;
}
a span:before {
    content:'>';
    font-size: 10px;
    font-weight: bold;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}
a:hover span:before {
    margin-left: 55%;
    -webkit-transform: rotate(-90deg);
}

转换按预期进行,但在动画结束时,旋转将重置为正常状态而不是持续存在.我创建了一个JSFiddle as an example.如何让我的轮换保持不变?

解决方法

尝试添加display:inline-block
像这样:
a:hover span:before {
    margin-left: 55%; 
    -webkit-transform: rotate(90deg); 
    display: inline-block;
}

fiddle.

说明.

认情况下,伪元素(如:before或:after)是内联的,因此它们存在转换问题,因此您需要将它们设置为display:block或display:inline-block.

原文地址:https://www.jb51.cc/html/224087.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐