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

perspectiveの基点位置指定

perspective-origin / perspective の基点位置指定

perspective-origin のサンプル

1
2
3

LT / CT / RT / LC / CC / RC / LB / CB / RB /

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

perspective-origin : center center

サンプル例の内容

【例】perspective:150pxの白枠divに以下を配置。
[1] transform: rotateY(30deg) top : 50px left : 10px
※ ウインドウサイズが380px以下は top : 50px left : 0px
[2] transform: rotateX(30deg) top:50px left:120px
※ ウインドウサイズが380px以下は top : 50px left : 70px
[3] transform: rotateX(90deg) rotateY(90deg) top:50px left:220px
※ ウインドウサイズが380px以下は top : 50px left : 140px

ボックス下のリンククリックで、白枠ボックスの perspective-origin を変更するサンプル。
C…center L…left R…right T…top B…bottom
赤丸っぽいものは一応、perspective-originの消失点をイメージ

perspectiveの基点位置指定プロパティ

perspective-origin:x y;
perspectiveの基点位置を指定。(指定なしは中心)
x = X軸(水平)方向の、長さの値、パーセント値、キーワード(left,center,right)を指定。
y = Y軸(垂直)方向の、長さの値、パーセント値、キーワード(top,center,bottom)を指定。
MDNの説明によると、”perspective-origin プロパティは、ユーザの見ている位置を決めます。これは perspective プロパティによって消失点として使われます。”とのこと。
参考:perspective-origin(MDN)
top > css3研究 > 
3DTransform時のperspectiveの基点位置指定

表示位置移動

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
お問い合せ