[CSS]シンプルな気持ちいいアニメーションで、ボタンのテキストと背景をホバー時に変更するスタイルシートのテクニック
Post on:2014年11月21日
sponsorsr
ボタンをホバーすると、テキストと背景をスライドのアニメーションで変更するスタイルシートのテクニックを紹介します。
ぱっと見、スクリプトを使ってるように見えますが、スタイルシートのみの実装です。

シンプルながら気持ちいいアニメーションは、下記ページで実際の動作を楽しめます。

Button with slide hover transition
実装もシンプルです。
HTML
hrefにはリンク先を入力して利用してください。
<div class="btn-cont">
<a href="javascript:void(0)" class="btn"><span>twitter</span></a>
</div>
CSS
ホバー時に変更するテキストと背景は「body .btn-cont .btn:after」に記述します。
body .btn-cont {
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
body .btn-cont .btn {
border: 1px solid black;
padding: 15px 41px;
color: black;
text-decoration: none;
}
body .btn-cont .btn span {
position: relative;
z-index: 1;
-webkit-transition: all 300ms ease-in;
transition: all 300ms ease-in;
}
body .btn-cont .btn:hover span {
opacity: 0;
visibility: hidden;
}
body .btn-cont .btn:after {
content: 'ホバー時に表示するテキスト';
position: absolute;
z-index: 5;
background-color: black;
padding: 15px 12px;
top: -15px;
left: 1px;
width: 0%;
visibility: hidden;
opacity: 0;
color: white;
-webkit-transition: all 300ms ease-out;
transition: all 300ms ease-out;
}
body .btn-cont .btn:hover:after {
visibility: visible;
opacity: 1;
width: 81%;
}
sponsors











