CSS3の2D変換(Transform)の使い方を徹底解説
CSS3の2D変換とは?
CSS3の2D変換(2D Transforms)は、HTML要素の位置や形状を変更するための強力な機能です。移動(translate)、回転(rotate)、拡大・縮小(scale)、傾斜(skew)といった操作を組み合わせることで、これまでJavaScriptなどが必要だった視覚効果を、CSSだけで手軽に実現できます。
2D変換は、transformプロパティに対して各変換関数を指定することで利用します。以下の表に、2D変換でよく使われる主な値とその説明をまとめました。
2D変換で使える主な値一覧
| 番号 | 値と説明 |
|---|---|
| 1 | matrix(n,n,n,n,n,n) 6つの値を使用して、行列(マトリクス)による変換を定義します。 |
| 2 | translate(x,y) 要素をX軸とY軸の両方向に移動させます。 |
| 3 | translateX(n) 要素をX軸方向に移動させます。 |
| 4 | translateY(n) 要素をY軸方向に移動させます。 |
| 5 | scale(x,y) 要素の幅と高さを変更します。 |
| 6 | scaleX(n) 要素の幅のみを変更します。 |
| 7 | scaleY(n) 要素の高さのみを変更します。 |
| 8 | rotate(angle) 指定した角度に基づいて要素を回転させます。 |
| 9 | skewX(angle) X軸方向への傾斜(スキュー)変換を定義します。 |
| 10 | skewY(angle) Y軸方向への傾斜(スキュー)変換を定義します。 |
2D変換の使用例
たとえば、要素を右に50px・下に100px移動させ、さらに45度回転させたい場合は、次のように複数の変換関数を組み合わせて記述できます。
.element {
transform: translate(50px, 100px) rotate(45deg);
}補足:ブラウザ対応について
古いバージョンのブラウザ(特にSafariやAndroid標準ブラウザなど)では、ベンダープレフィックス付きの-webkit-transformなどを併記する必要がある場合があります。近年のモダンブラウザでは接頭辞なしで動作しますが、幅広い環境をサポートしたい場合は注意しましょう。
-
CSS3のtransformで実現!要素の2D変換の基本と使い方
2D変換とは?CSS3の2D変換(2D Transform)は、translate(移動)、rotate(回転)、scale(拡大・縮小)、skew(傾斜)などの関数を使って、HTML要素の位置や形状を自由に変更できる機能です。これらの変換を組み合わせることで、従来はJavaScriptが必要だった視覚効果を、CSSだけで手軽に実現できます。主な2D変換関数一覧No.値と説明1matrix(n,n,n,n,n,n)6つの値を指定して、行列による変換を定義します。2translate(x,y)X軸・Y軸の両方向に沿って要素を移動させます。3translateX(n)X軸方向に沿って要素を移動させ
-
CSS3でキーフレームアニメーションを定義する方法
CSS3でキーフレームアニメーションを作成するには、個々のキーフレームを定義します。キーフレームとは、アニメーションの途中の状態(中間ステップ)を制御するための仕組みです。開始時点と終了時点のスタイルを指定することで、その間の変化をブラウザが自動的に補間してくれます。以下に、CSS3でキーフレームを定義するコード例を示します。コード例<!DOCTYPE html> <html> <head> <style> body { font-family: Segoe UI, Tahoma, Geneva, Verdana, sans-serif;