こんにちは朱夏です。
今回は、CSSの「transform」を使って、要素を変形させる方法を解説してみました。
要素を回転させたり変形させたりしてみたい。
「transform」は、画像などの要素を引き延ばしたり、斜めに配置したりできる他、回転や移動などのアニメーションにも使われています。
今回は、「transform」の値の中でも基本的に使われているものを中心に解説していきたいと思います。
それではいってみましょう。
skew(傾斜)
rotate(回転)
translate(移動)
あとがき
skew(傾斜)
「skew」は要素を傾斜させる値になります。
四角から平行四辺形に変形させるイメージです。
サンプルはこちら。
See the Pen
BaopobE by 朱夏 (@syunatsu1)
on CodePen.
変化が解りやすいようにマウスカーソルを重ねた時に変形する様にしてみました。
書き方はこんな感じになります。
横に傾斜:transform: skewX(30deg);
縦に傾斜:transform: skewY(30deg);
縦横に傾斜:transform: skew(30deg, 30deg);
要素の形そのものを変形させる事が出来ます。
周りの要素への影響が強いので使い所を考えて使っていきたいですね。
rotate(回転)
「rotate」要素を回転させる値です。
サンプルはこちらになります。
See the Pen
wvKgMLo by 朱夏 (@syunatsu1)
on CodePen.
回転方向が解りやすいように、transitionを使って0.5秒かけて変形する様にしました。
書き方はこんな感じになります。
X軸で回転:transform: rotateX(180deg);
Y軸で回転:transform: rotateY(180deg);
Z軸で回転:transform: rotateZ(180deg);
※Z軸回転は「rotate」(Zなし)でもOK
回転は割と良く使われる値の一つかなと思います。
translate(移動)
「translate」要素を移動させる値になります。
サンプルはこちらです。
See the Pen
vYNgGLO by 朱夏 (@syunatsu1)
on CodePen.
要素が重なってしまう部分もあるので、移動と一緒に色も変わる様にしてみました。
書き方は以下の様になります。
X軸方向へ移動:transform: translateX(100px);
Y軸方向へ移動:transform: translateY(100px);
X、Y軸へ移動:transform: translate(100px, 100px);
スライドさせたり、パッと位置を切り替えたり、使い方は様々あると思います。
あとがき
というわけで、「transform」を使って要素を変形させる方法について書いてみました。
今回のまとめはこちら。
- 「skew」で傾斜
- 「rotate」で回転
- 「translate」で移動
「transform」に指定できる値には、他にもサイズ変更や3D変形など様々なものがあるので、色々試してみると良いと思います。
今回は以上です。
次回もよろしくお願いします。