[CSS]まるでFlashのように画像とキャプションをアニメーションで替えるテクニックいろいろ

画像をホバーすると、小気味良いアニメーションを伴ってキャプションに替えるCSS3のテクニックを紹介します。
デモは10種類あり、CSSでここまでできるのか!って感じです。

サイトのキャプチャ

Original Hover Effects with CSS3

基本となるHTML

HTMLは非常にシンプルです。
キャプションはタイトルとテキストをdiv要素で内包しclassに「mask」をつけ、そのキャプションと画像をdiv要素で内包します。

<div class="view">
     <img src="image.gif" />
     <div class="mask">
     <h2>Title</h2>
     <p>Your Text</p>
         <a href="#" class="info">Read More</a>
     </div>
</div>

※HTMLは各デモで上記のものから少し手を加えて実装しています。

基本となるCSS

各デモのデフォルトとなるスタイルシートです。
ここでは特別なエフェクトは設定してなく、基本となる表示を定義しているだけです。

.view {
    width: 300px;
    height: 200px;
    margin: 10px;
    float: left;
    border: 10px solid #fff;
    overflow: hidden;
    position: relative;
    text-align: center;
    box-shadow: 1px 1px 2px #e6e6e6;
    cursor: default;
    background: #fff url(../images/bgimg.jpg) no-repeat center center
}
.view .mask, .view .content {
    width: 300px;
    height: 200px;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0
}
.view img {
    display: block;
    position: relative
}
.view h2 {
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    position: relative;
    font-size: 17px;
    padding: 10px;
    background: rgba(0, 0, 0, 0.8);
    margin: 20px 0 0 0
}
.view p {
    font-family: Georgia, serif;
    font-style: italic;
    font-size: 12px;
    position: relative;
    color: #fff;
    padding: 10px 20px 20px;
    text-align: center
}
.view a.info {
    display: inline-block;
    text-decoration: none;
    padding: 7px 14px;
    background: #000;
    color: #fff;
    text-transform: uppercase;
    box-shadow: 0 0 1px #000
}
.view a.info:hover {
    box-shadow: 0 0 5px #000
}

※上記スタイルシートではベンダープレフィックス(-moz-など)は省略しています。実際に利用する際にはベンダープレフィックスを記述してください。

必見の10種類のかっこいいデモ

デモを楽しむには、Firefox, Chrome, Safari でご覧ください、IEは多分IE10までお待ちください。

デモのキャプチャ

Example 1

最初のデモは、最もベーシックなものです。
ホバーすると遅延を伴ったアニメーションで、画像を拡大しキャプションが上下からスライドします。

デモのキャプチャ

Example 2

斜めにスライドするエフェクトです。これはマスクとなるdiv要素を回転させています。

デモのキャプチャ

Example 3

遅延のタイミングをずらし、順番に斜めからスライドするエフェクトです。

デモのキャプチャ

Example 4

画像のサイズをアニメーションで小さくし、キャプションを回転させながら表示させます。

デモのキャプチャ

Example 5

画像を押すようにキャプションが左からスライドします。

デモのキャプチャ

Example 6

拡大したキャプションを元のサイズまでズームアウトします。

デモのキャプチャ

Example 7

画像を回転しながら縮小し、キャプションを上から遅延でスライドさせます。

デモのキャプチャ

Example 8

キャプションがスライドし、バウンドします。バウンドのエフェクトはキーフレームを使用しています。

デモのキャプチャ

Example 9

2つのマスクを使い、斜めにスライドして合体し、キャプションを表示します。

デモのキャプチャ

Example 10

画像をズームし不透明度をコントロールして、キャプションを表示します。

top of page

©2017 coliss