:after に画像を置き、:hover に翻訳します。OS X を使用する Chrome では、他の無関係な要素を移動させます (Firefox: 応答なし、Safari: トランジション効果をサポートしていません)。
移行なしで試しましたが、正常に動作します。
私はいくつかの要素でこれを持っていますが、遷移と :after が関係している限り、それらはすべて同じ問題を抱えています。
html は次のとおりです。
<a href="work-timburton.html" class="btn-call-to-action">See the project</a>
そしてCSS:
.btn-call-to-action {
background: #8e8287;
margin-bottom: 15px;
color: #f5f3e2;
padding: 10px 70px 10px 10px;
margin-top: 6px;
line-height: 1;
display: inline-block;
position: relative;
border-bottom: none;
border-radius: 2px;
white-space: nowrap; }
.btn-call-to-action:after {
content: url('../img/general-white-arrow.svg?1370787761');
position: relative;
display: inline-block;
position: absolute;
top: 8px;
width: 35px;
padding-left: 15px;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out; }
.btn-call-to-action:hover:after {
-webkit-transform: translatex(6px);
-moz-transform: translatex(6px);
-o-transform: translatex(6px);
-ms-transform: translatex(6px);
transform: translatex(6px); }