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)。