原森情報技術研究所 WEBコンテンツ企画・制作・運営・サポート / 兵庫県 神戸市 明石市 /

3DTransform 変形の原点を指定

transform-origin / 変形の原点を指定

transform-originの違いを確認するサンプル

1

白枠マウスホバーで青ボックスが rotateZ(360deg)

LT / CT / RT / LC / CC / RC / LB / CB / RB / -10px -10px / 100px 20px / 120px 180px /

ボタンクリックで transform-origin 変更

transform-origin : center center

2017.10.08
以下のホバーアニメを選択できるように機能追加しました。

rotateZ(360deg) rotateY(360deg) rotateX(360deg) rotateZ(360deg) rotateY(360deg) rotateZ(360deg) rotateX(360deg)

サンプル例の内容

【例】白枠divをマウスホバーで子要素の青色divが360度回転します。
ボックス下のリンククリックで、青色ボックスの transform-origin を変更し、その変化を確認するためのサンプルです。
C…center L…left R…right T…top B…bottom、ピクセル指定も3点用意。
※赤丸っぽいものは、transform-originの指定点をイメージするために角丸divを参考用として配置したものです。

変形の原点を指定プロパティ

transform-origin
要素に2D変形 or 3D変形の原点を指定。初期値=ボックスの中心、z(奥行き)=0。
[指定方法]transform-origin:x y x; or transform-origin:x y;
x=X軸(水平)方向。長さの値、パーセント値、キーワード(left center right)
y=Y軸(垂直)方向。長さの値、パーセント値、キーワード(top center bottom)
z=Z軸(奥行)方向。長さの値
top > css3研究 > 
3DTransform 変形の原点を指定

表示位置移動

translate(x) / x…[length]
translate(x,y) / x,y…[length]
translate(x) = translate(x,x)

translate3d(x,y,z) / x,y,z…[length]

translateX(x) / x…[length]
translateX(x) = translate(x,0)

translateY(y) / y…[length]
translateY(y) = translate(0,y)

translateZ(z) / z…[length]
translateZ(z) = translate3d(0,0,z)

拡大・縮小

scale(x) / x…[数量]
scale(x,y) / x,y…[数量]
scale(x) = scale(x,x)

scale3d(x,y,z) / x,y,z…[数量]

scaleX(x) / x…[数量]
scaleX(x) = scale(x,1) = scale3d(x,1,1)

scaleX(x) / x…[数量]
scaleX(x) = scale(x,1) = scale3d(x,1,1)

scaleY(y) / y…[数量]
scaleY(y) = scale(1,y) = scale3d(1,y,1)

scaleZ(z) / z…[数量]
scaleZ(z) = scale3d(1,1,z)

回転

rotate(a) / a…[角度]
aが正の値なら時計回り

rotate3d(x,y,z,a) / x,y,z…[数量] a…[角度]

rotateX(a) / a…[角度]
rotateX(a) = rotate3d(1,0,0,a)

rotateY(a) / a…[角度]
rotateY(a) = rotate3d(0,1,0,a)

rotateZ(a) / a…[角度]
rotateZ(a) = rotate3d(0,0,1,a)

傾斜変形

skew(ax [,ay]) / ax,ay…[角度]
ay省略時はaxのみの変形。※skewは非標準となった

skewX(a) / a…[角度]

skewY(a) / a…[角度]

行列指定

matrix(a , c , b , d , tx , ty)
線形 transform a , b , c , d …[数量](Gecko系のみlength可) 移動量 tx , ty …[length]

matrix3d(a1 , b1 , c1 , d1 , a2 , b2 , c2 , d2 , a3 , b3 , c3 , d3 , a4 , b4 , c4 , d4)
線形 transform a1 , b1 , c1 , d1 , a2 , b2 , c2 , d2 , a3 , b3 , c3 , d3 , d4 …[数量] 移動量 a4 , b4 , c4 …[length]

カテゴリMENU
お問い合せ