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

css – 为什么在webkit浏览器中’margin’和’padding’的转换是滞后的?

我试图对margin和padding属性应用CSS转换.

我想让视觉上的背景变得更大.所以我增加了填充,并相应地减少了空白,所以文本将保持在他们当前的位置.

这是代码

.content {
    width: 600px;
    margin: auto;
}

a.btn {
    background-color: #5C9E42;
    color: #fff;
    text-decoration: none;
    font-size: 35px;
    border-radius: 5px;
    padding: 10px;
    text-shadow: 2px 2px 2px #696969;
    transition: all 0.3s ease;
}

a.btn:hover {
    background-color: #23570E;
    padding: 20px;
    margin: -10px;
}
<div class="content">
    <p>Lorem ipsum dolor sit amet,consectetur adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    <a href="#" class="btn">Bello! How are you doing?</a>
</div>

当您运行代码时,您可以看到,转换是滞后的,文本在悬停时提供了混乱.

但是,它只发生在Chrome,Safari,Opera和其他Webkit浏览器中.
它在Firefox和IE中工作正常.

P.S:使a.btns显示为内联块稍微减少了滞后.可能是什么问题?

解决方法

解决方法是将转换应用于具有背景颜色的伪元素并将其缩放到悬停上.这样,文本仍然是“未经过转换的”,不会摆动:

Demo

CSS:

a.btn {
     position:relative;
    color: #fff;
    text-decoration: none;
    font-size: 35px;
    padding: 10px;
    text-shadow: 2px 2px 2px #696969;
}
a.btn:before{
    content:'';
    position:absolute;
    top:0; left:0;
    border-radius: 5px;
    width:100%; height:100%;
    background-color: #5C9E42;
    z-index:-1;

    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}
a.btn:hover:before {
    background-color: #23570E;

    -webkit-transform: scaleX(1.1) scaleY(1.2);
    -ms-transform: scaleX(1.1) scaleY(1.2);
    transform: scaleX(1.1) scaleY(1.2);
}

您应该包括转换和转换CSS属性的供应商前缀,更多信息请查看CanIUse.

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

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