跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

CSS变形(CSS3)到底怎么用?

一、2D变形(CSS3)transform

transform是CSS3中的一项强大功能,它可以实现元素的位移、旋转、倾斜和缩放,甚至支持矩阵变换。配合过渡和动画,几乎可以取代之前需要Flash才能实现的效果。

1、移动 translate(x, y)

translate方法可以用来将元素在水平和垂直方向上移动。比如,translate(50px, 50px)会将元素向右移动50像素,向下移动50像素。

translate(x,y) // 水平方向和垂直方向同时移动(X轴和Y轴同时移动)
translateX(x) // 仅水平方向移动(X轴移动)
translateY(y) // 仅垂直方向移动(Y轴移动)

2、缩放 scale(x, y)

scale方法可以对元素进行水平和垂直方向的缩放。例如,transform:scale(0.8, 1);会使元素在水平方向上缩小20%,垂直方向上保持不变。

scale(X,Y) // 使元素水平方向和垂直方向同时缩放(X轴和Y轴同时缩放)
scaleX(x) // 元素仅水平方向缩放(X轴缩放)
scaleY(y) // 元素仅垂直方向缩放(Y轴缩放)

3、旋转 rotate(deg)

rotate方法可以使元素进行旋转。正值表示顺时针旋转,负值表示逆时针旋转。例如,transform:rotate(45deg);会使元素顺时针旋转45度。

transform:rotate(45deg); // 注意单位是deg度数

4、倾斜 skew(deg, deg)

skew方法可以使元素按一定的角度进行倾斜。例如,transform:skew(30deg, 0deg);会使元素水平方向上倾斜30度,垂直方向上保持不变。

二、3D变形(CSS3)transform

CSS3中的3D变形涉及到X、Y、Z三个坐标轴。我们可以使用rotateX、rotateY、rotateZ等方法来分别沿着这三个轴进行旋转。

1、rotateX()

rotateX方法可以沿着X轴进行旋转。例如,img:hover { transform:rotateX(180deg); }会使图片在鼠标悬停时沿X轴旋转180度。

2、rotateY()

rotateY方法可以沿着Y轴进行旋转。例如,img:hover { transform:rotateY(180deg); }会使图片在鼠标悬停时沿Y轴旋转180度。

3、rotateZ()

rotateZ方法可以沿着Z轴进行旋转。例如,img:hover { transform:rotateZ(180deg); }会使图片在鼠标悬停时沿Z轴旋转180度。

透视(perspective)

透视可以将一个2D平面转换成3D效果。perspective属性可以设置视距,即视点距离屏幕的距离。

translateZ(z)

translateZ方法可以沿着Z轴进行移动。例如,transform:translateZ(100px);会使元素沿着Z轴远离屏幕100像素。

backface-visibility

backface-visibility属性可以定义当元素不面向屏幕时是否可见。例如,backface-visibility: hidden;会使元素在背面不可见。

通过以上这些方法,我们可以使用CSS3的transform属性来实现各种复杂的变形效果,让网页更加生动有趣。

我是「新派编程网」(www.xjpbg.com)的林译川,如果你对CSS3变形还有更多疑问,欢迎访问我们的网站了解更多内容。

相关文章