CSS3を使うと、静的な表現だけでなく、アニメーションやインタラクションが加えられます。その作例を8つご紹介します。最後の例を除いて、JavaScriptコードは書きません。いずれも中身は、リンクしたノートで詳しく解説しています。
ただのテキストでも、フォントを選んでCSS3でアニメーションさせると、表現力は大きく高まります。
「Monoton」フォントを使って、text-shadow
プロパティで光彩を与えました。そして、animation
プロパティにより、イルミネーションの点滅のようなアニメーションを加えています(サンプル001)。
text-shadow
プロパティのつくる影で、文字が浮き上がって見えるようにしました。animation
プロパティが、テキストの影をひと文字ずつ時間差で増減して浮き沈みさせています(サンプル002)。
マウス操作により、サブメニューを開くというインタラクションも、CSS3のアニメーションで表せます。
transition
プロパティでプルダウンメニューのナビゲーションをつくりました。サブメニューは不透明度を上げながら広がり、メニューテキストの色も短い時間で変わっています(サンプル003)。
transition
プロパティでつくったアコーディオンメニューのナビゲーションです。サブメニューの高さと項目の不透明度をアニメーションさせることで開け閉めしています(サンプル004)。
transform
プロパティは要素を2次元あるいは3次元で、伸縮・回転・移動します。それにtransition
プロパティを組合わせると、インタラクティブなアニメーションができます。
transform
プロパティでイメージを、伸縮したり、回転したり、移動できます。それにtransition
プロパティを組合わせてアニメーションさせました(サンプル005)。
transition
プロパティを使って、ふたつの画像をクロスフェードで切替えることができます。さらに、切替えボタンなどのインターフェイスもCSSでつくりました(サンプル006)。
transform
とtransition
プロパティを組み合わせて、3次元のアニメーションができます。イメージやテキストの要素を水平に回したり、手前に押し出したりしてみました(サンプル007)。
transform
とtransition
プロパティを用いて、画像にマウスポインタが重なったとき説明のテキストを表示します(サンプル008)。表現の仕方を3つ試しました。
transform
プロパティは、要素に回転・伸縮・傾斜・移動などの座標変換を加えます。さらに、transform-style
プロパティも合わせて用いれば、要素が3次元空間で変換できます。矢印キーの操作によるインタラクションは、JavaScriptコードで加えました(サンプル009)。