[CSS]シンプルな気持ちいいアニメーションで、ボタンのテキストと背景をホバー時に変更するスタイルシートのテクニック
Post on:2014年11月21日
ボタンをホバーすると、テキストと背景をスライドのアニメーションで変更するスタイルシートのテクニックを紹介します。
ぱっと見、スクリプトを使ってるように見えますが、スタイルシートのみの実装です。
シンプルながら気持ちいいアニメーションは、下記ページで実際の動作を楽しめます。
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